3

我正在尝试编写一个简单的 mod_rewrite 规则,但我不知道它为什么不起作用。

我只是想重写http://example.com/to/abchttp://example.com/to/index.py?to=abc.

目前,我的重写规则是:

RewriteEngine On
RewriteRule ^/?to/(.*)$ /to/index.py?to=$1

据我所知,它应该与任何类似的 URL 匹配/to/whatever,带或不带前导/.

谁能告诉我我在这里缺少什么?

4

1 回答 1

0

首先,您没有提到确切地说它“不工作”的方式。如果我不得不猜测,我会说它可能是循环的,你需要这样做:

RewriteEngine On
RewriteCond %{REQUEST_URI} !index.py
RewriteRule ^/?to/(.*)$ /to/index.py?to=$1 [PT]

这就是说“如果它已经被重写,就不要重写它。

那里的 [PT] 还说“将此目标视为 URI,而不是文件路径。

但是,为了确定,您需要告诉我们正在发生的事情,以及它与您想要发生的事情有何不同。错误日志条目会很有帮助。重写日志条目会更有帮助。

于 2013-12-19T15:18:51.803 回答