当我尝试在htaccess中执行此操作时:


 RewriteEngine on
 RewriteRule ^([^ \。] +)$ $ 1.php [ NC,L]
 ErrorDocument 404 /includes/errors/404.php
ErrorDocument 403 /includes/errors/403.php
RewriteRule ^ profile /([^ /] +)$ / profile?user = $ 1



 它有效,但我读的名字是错误的。
当我这样做的时候 http:// localhost / profile / Andre 我将Andre.php作为用户而不是Andre。
有人知道如何修复此
&#XA?;答案 0 :(得分:2)
这是因为你根据你的第一条规则重写,并且由于它被设置为最后一个,所有这一切都会发生。尝试移动您的个人资料规则:
RewriteEngine on
RewriteRule ^profile/([^/]+)$ /profile?user=$1 [NC,L]
RewriteRule ^([^\.]+)$ $1.php [NC,L]
ErrorDocument 404 /includes/errors/404.php
ErrorDocument 403 /includes/errors/403.php
我还添加[NC,L]将规则标记为 N o C ase, L ast