文档根mod_rewrite上的.htaccess错误

时间:2012-01-02 05:35:42

标签: php .htaccess configuration

好的,所以,.htaccess我遇到了问题。

假设我可以访问这样做的个人资料:http://website.com/members.php?id=1

所以,我希望mod_rewrite来到这里:http://website.com/1

所以我将它添加到我的.htaccess文件中:

Options +FollowSymLinks
RewriteEngine On

RewriteRule ^([^/]*)$ /members.php?id=$1 [L]

我访问http://website.com/1。它不起作用。实际上,我收到500错误。

所以,我决定尝试别的东西。我在前面添加了前缀user/。所以它变成了这个:

RewriteRule ^user/([^/]*)$ /members.php?id=$1 [L]

查看新的用户/

我访问http://website.com/user/1。有用。怪异。

帮助?任何人吗?

3 个答案:

答案 0 :(得分:1)

这可能是因为你的规则遭受了递归。您的规则还会捕获并重写members.php ...

答案 1 :(得分:1)

在规则前添加:

RewriteCond %{REQUEST_URI} !^/members.php

答案 2 :(得分:1)

在RewriteRule之前添加此行以防止循环:

RewriteCond %{QUERY_STRING} ^$