nginx简单.htm到.php重写规则不起作用

时间:2015-11-23 15:12:34

标签: php mod-rewrite nginx

我有这个简单的重写规则:

rewrite ^/category.htm /category.php last;

它不起作用,网站提供404错误。

这仅在特定服务器上发生,而此规则在其他任何地方都可以正常工作。

重要的是,如果我从规则中删除点(。)并使用下划线,例如,它可以正常工作。

所以我认为逃避点(。)

是一个问题

我也试过这个,但它也不起作用:

rewrite ^/category\.htm /category.php last;

任何人都可以帮忙!

2 个答案:

答案 0 :(得分:0)

我不是100%,我现在无法测试它,但我认为这段时间需要放在括号内。您可能还需要一个美元符号。所以,像:

rewrite ^/category(.)htm$ /category.php last;

我不能保证这是正确的答案,但我很确定你试图逃避这段时间是在正确的轨道上。

答案 1 :(得分:0)

我通过清空整个文件然后逐行添加它来找到问题...

因此,我确切地发现了问题的确切位置,并且它是一个外部文件,正在弄乱此文件中的规则......

我对每个人的建议,如果你遇到这种情况,先尝试评论所有的包含,然后你可以放心地说你的代码发生了什么,你可以解决它