0

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

该站点托管在 dev.domain.com 上,htaccess 代码是

Options +FollowSymlinks
RewriteEngine On
RewriteBase /


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

但是,当我访问http://dev.domain.com/order/4时,$_GET 没有通过,以前从未遇到过此类问题。

4

2 回答 2

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

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

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

于 2012-04-08T13:47:26.377 回答
0

问题是 Nginx 根本不支持 .htaccess ,必须以自己的方式进行..

于 2012-04-10T14:26:36.400 回答