我在ngix conf文件中进行了重写,可以正常工作,只是它似乎将位置块包含在$ uri变量中。我只想要位置块后面的路径。我当前的配置代码是:
location /cargo {
try_files $uri $uri/ /cargo/index.php?_REWRITE_COMMAND=$uri&args;
}
使用http://localhost/cargo/testpage
重定向的示例URL 可以,但是我的php文件接收到的“ _REWRITE_COMMAND”参数的值为“ / cargo / testpage”。我需要剥离位置块,然后将“ testpage”作为$ uri
我很确定有一种正则表达式语法可以拆分$ uri并使用$ 1 $ 2等将其分配给新变量,但是我找不到任何示例来使用不属于重写的正则表达式来进行变量赋值声明。我一直在寻找并尝试了几个小时,但似乎似乎无法摆脱最后一步。
我也知道我可以在应用程序代码上删除它,但是我想在nginx conf中修复它的原因是出于兼容性原因,因为它也可以在Apache上运行。我还应该说我已经找到了一种真正的方法,但是它涉及一个“ if”语句来检查文件是否存在,文档特别指出不要这样做。