我想在/ widget /文件夹IE中找到任何内容:
www.site.com/widget/1/2/3
重写为
www.site.com/index.php?type=widget&a=1&b=2&c=3
使用try_files指令
小部件文件夹IE之外的任何文件:
www.site.com/cool_stuff.php
应该不受此重写的影响
经过多次尝试失败后,我无法让它发挥作用。任何帮助将不胜感激!
答案 0 :(得分:3)
try_files
接收一个参数列表,表示Nginx应该将请求传递给哪些文件。例如:try_files $uri $uri/ index.php =404
通知Nginx应该尝试将请求与$uri
匹配(请求的路径作为文件名,重写后)$uri/
(请求的路径作为目录,重写后),然后尝试index.php
,如果所有其他方法都失败,则返回HTTP 404 Not Found错误代码。另一个例子:将每个请求映射到index.php,无论它的URI如何,都使用try_files index.php =404;
。
在这种情况下,我认为try_files不是满足您要求的最佳指令。相反,请考虑使用重写规则将/widget/1/2/3
转换为/index.php?type=widget&a=1&b=2&c=3