RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-\s]+)/([a-zA-Z0-9_-\s]+)/([a-zA-Z0-9_-\s()]+)/?$ product.php?group=$1&salt=$2&name=$3 [L]
它与我以前的托管工作正常,但当我将我的托管更改为1and1(Linux)时,它给了我500内部服务器错误。 请帮帮我。 感谢
答案 0 :(得分:0)
您是否确定新的提供商已启用mod_rewrite
?这是mod_rewrite
看到500个错误的最常见原因。
要进行快速测试,只需使用以下行替换完整的.htaccess
(首先备份原始.htaccess
)
RewriteEngine on
RewriteRule ^(.*)$ http://www.google.com [R]
如果mod_rewrite
已启用,则会将您的所有请求重定向到Google。
答案 1 :(得分:0)
安装mod重写的正确方法是使用<IfModule mod_rewrite.c>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-\s]+)/([a-zA-Z0-9_-\s]+)/([a-zA-Z0-9_-\s()]+)/?$ product.php?group=$1&salt=$2&name=$3 [L]
</IfModule>
这将确保仅在安装mod_rewrite时才运行mod重写。这至少应该停止服务器错误。如果不是这意味着您的重写规则出现语法错误。