我有这个.htaccess文件:
RewriteEngine On
RewriteBase /
RewriteRule ^/(.*)/(.*)/(.*)$ index.php?pageLevel1=$1&pageLevel2=$2&pageLevel3=$3 [L,R=301]
当我尝试访问该页面时,它会给我提供500内部服务器错误'。
我做错了什么?
答案 0 :(得分:0)
它对我有用 - 检查你是否已启用mod_rewrite
像@Panama Jack建议的那样。
a2query -m rewrite
如果没有说启用,则启用它:
a2enmod rewrite
service apache2 restart
如果您的基数为/
,您可能还想删除规则中的第一个斜杠,因此它变为:
RewriteRule ^(.*)/(.*)/(.*)$ index.php?pageLevel1=$1&pageLevel2=$2&pageLevel3=$3 [L,R=301]
答案 1 :(得分:0)
我假设你试图将流量引导到网址index.php?pageLevel1 = $ 1& pageLevel2 = $ 2& pageLevel3 = $ 3
显示500错误,因为它无法理解规则^ /(。)/(。)/(。*)$
请参阅以下指南,
https://www.addedbytes.com/articles/for-beginners/url-rewriting-for-beginners/