问下nginx配置问题?
情况是这样的,我nginx配置了这样一段,找不到文件会重定向到index.php
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
但是我配置了一些重定向如:
location /device {
proxy_pass https://test.com/device;
break;
}
我原本是想除了device 路径之外的 路径能够走
rewrite ^(.*)$ /index.php?s=$1 last;
但是现在我执行localhost/device 也还是帮我转到 rewrite里面,没有帮我转发?
是不是跟顺序有关系
感觉你应该这样写,在原有的配置中新增一个 device
先精确匹配,次之正则,次之最大前缀。 按最大前缀,应走
/device
。但不知你的if (!-e $request_filename)
配置在了哪个 location,如果所在的 location 是正则,且匹配到了,就不会走/device
。