In pratica, si desidera reindirizzare automaticamente una richiesta POST utilizzando un reindirizzamento permanente 301 spostato.
Tuttavia. tale reindirizzamento sono specificamente annullato dal HTTP Specifications quale:
Se il codice di stato 301 è ricevuto in risposta ad una richiesta diversa GET o HEAD, l'agente utente NON DEVE reindirizzare automaticamente la richiesta a meno che non può essere confermato dall'utente, poiché ciò potrebbe modificare le condizioni in base alle quali è stata emessa la richiesta.
Spec inoltre notare che:
Quando reindirizzando automaticamente una richiesta POST che riceve un codice di stato 301, alcuni agenti esistenti HTTP/1.0 UTENTE erroneamente trasformarla in una richiesta GET.
credo che la seconda situazione può essere quello che sta succedendo e che, mentre il server di destinazione è in attesa di dati POST, sta ricevendo i dati GET, invece.
Le scelte sono:
A. Cambiare il codice per lavorare con i dati GET o, meglio ancora, sia POST e GET. I.E., cerca POST e se no, prova GET equivalenti.
B. Cercare di garantire che il codice riceva i dati POST lavorando con la specifica.
Potrebbe essere possibile ottenere la scelta B utilizzando la direttiva proxy_pass per gestire invece la richiesta.
Qualcosa come:
location ~ user_info.php {
proxy_pass http://testing.com/userhistory;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
In questo modo, l'utente è tecnicamente reindirizzato.
grazie, in questo momento Im inviando i dati del post tramite arricciatura. – meWantToLearn