.htaccess重写规则并不想工作

时间:2012-04-08 13:32:32

标签: .htaccess

我一直在使用重写规则,但这很奇怪。

该网站托管在dev.domain.com上,htaccess代码为

Options +FollowSymlinks
RewriteEngine On
RewriteBase /


RewriteRule ^order/([^/]+) order.php?id=$1 [QSA]
...

然而,当我去http://dev.domain.com/order/4 $ _GET没有被传递时,之前从未遇到过这种问题。

2 个答案:

答案 0 :(得分:0)

  1. 检查AllowOverride是否限制您。例如,如果它设置为None - 这将完全禁用整个.htaccess支持,而Apache根本不会在磁盘上查找.htaccess文件。

  2. 检查是否已启用MultiViews。众所周知,这会与mod_rewrite一起产生意外结果。

  3. 在规则中添加“L”标志 - [L,QSA]以停止该点的规则执行。也许你有其他规则,你没有在这里发布,这会影响行为。

答案 1 :(得分:0)

问题是Nginx根本不支持.htaccess,必须按照自己的方式去做..