我试图删除http post方法上的尾斜杠,当我尝试使用rewrite ^/(.*)/$ /$1 permanent;
重写URL时,它不适合我
如果Http POST以这些格式来,上游应该以这种格式接收/x/y
- 位置/x/y/= =>位置/x/y
- 位置/x/y = =>位置/x/y
nginx的配置
upstream backend {
server 127.0.0.1:8778;
# Number of idle keepalive connections per worker process.
keepalive 35;
}
location /x/y {
limit_except POST {
deny all;
}
proxy_pass http://backend;
proxy_buffering on;
include proxy.conf;
}
这里的问题是,当上游看到URI是在这种格式/x/y/
它拒绝了请求,应该是什么正确的重写规则,这样,如果http post的格式像/x/y
或/x/y/
的上游应该总是看到/x/y
permanent
将导致rewrite
生成带有301响应的重定向。您需要的是在将URI发送到上游之前对其进行内部调整:
location /x/y {
rewrite ^/(.*)/$ /$1 break;
...
}