Versão NGINX: 1.10.3 em um Debain 9.1 OS com Jessie-Backports
nginx.conf
:
user www-data;
pid /var/run/nginx.pid;
worker_processes 1;
error_log /var/log/nginx/error.log;
events {
worker_connections 1024;
}
http {
log_format main 'request_method:$request_method request:$request';
server {
listen 80;
error_page 405 =200 $uri;
access_log /var/log/nginx/access.log main;
location / {
default_type text/html;
root /usr/share/nginx/html/;
include mime.types;
index index.html index.htm index.asp index.aspx index.php default.html default.htm default.asp default.aspx default.php;
}
error_page 403 /403.html;
error_page 400 401 402 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /400.html {
root /usr/share/nginx/error-pages/Apache/2.4.20;
}
location = /403.html {
root /usr/share/nginx/error-pages/Apache/2.4.20;
}
location = /404.html {
root /usr/share/nginx/error-pages/Apache/2.4.20;
}
location = /50x.html {
root /usr/share/nginx/error-pages/Apache/2.4.20;
}
}
}
Quando eu POST
deste servidor, já que o nginx não pode exibir páginas estáticas em POST
, recebo um código de resposta 405
. Mas também preciso veicular a página estática em uma solicitação POST
.
Então, a maioria das soluções alternativas na Internet sugeriu esse trecho de código = error_page 405 =200 $uri;
Isso funcionou bem para o propósito de veicular conteúdo estático para uma solicitação POST
com código de resposta 200
, MAS < br> Devido ao $uri
, os redirecionamentos internos do nginx fazem com que o $request_method
mude de POST
para GET
e no /var/log/nginx/access.log
, eu recebo isto:
request_method:GET request:POST /Login.html HTTP/1.1\n
em vez de request_method:POST request:POST /Login.html HTTP/1.1\n
Alguma solução alternativa para resolver isso?