这是我的.htaccess
代码:
RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R=301,L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
<IfModule mod_rewrite.c>
RewriteRule ^user/([0-9a-ZA-Z]+) user.php?page=$1 [NC,L]
</IfModule>
我想从所有页面中删除.php扩展名,所以我使用上面4行,我也想让我的URL更干净,所以我应用最后一行。 但是当我应用最后一行时,XAMPP和WAMP都开始显示内部服务器错误。我想知道它的原因是什么。
如果我的代码有误,那么请建议我如何使网址更加干净如下:
http://localhost/project/user?user=ROYAL
我想成功:
答案 0 :(得分:0)
我从哥哥那里得到了答案: 我只需要改变:
i
成:
RewriteRule ^user/([0-9a-ZA-Z]+) user.php?page=$1 [NC,L]
这只是一个Apache版本问题,添加了反斜杠以避免转义 此问题被识别为 RewriteRule:无法编译正则表达式