RewriteRule在写入.com时出现服务器错误

时间:2018-10-16 09:22:35

标签: php .htaccess

我对以下规则有疑问。以下规则的工作方式类似于

www.address.com/profile/username,但是当我在用户名( .com )之后这样写时

www.address.com/profile/username.com然后出现内部服务器错误。我该如何解决这个问题,任何人都可以在这里为我提供帮助?

RewriteRule ^profile/([\w-]+)/?$ profile.php?username=$1 [L,QSA]  
RewriteRule ^profile/(followers|friends|saved)/([\w-]+)/?$ $1.php?username=$2 [L,QSA]

1 个答案:

答案 0 :(得分:2)

您可以按照以下规则使正则表达式更加开放:

RewriteRule ^profile/([^/]+)/?$ profile.php?username=$1 [L,QSA,NC]  
RewriteRule ^profile/(followers|friends|saved)/([^/]+)/?$ $1.php?username=$2 [L,QSA,NC]

[^/]与任何非/的字符匹配