我正在尝试删除http post方法上的尾部斜杠,当我尝试使用rewrite ^/(.*)/$ /$1 permanent;
重新编写URL时,它对我不起作用
如果Http POST以这些格式出现,则上游应以此格式/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帖子的格式如{{1 }}或/x/y
上游应该始终看到/x/y/
答案 0 :(得分:3)
permanent
会导致rewrite
生成带有301响应的重定向。您需要的是在向上游发送URI之前对URI进行内部调整:
location /x/y {
rewrite ^/(.*)/$ /$1 break;
...
}
有关详情,请参阅this document。