我有一个链接http://mysite.com/username
,可以重定向到当前的个人资料页面
用户名..
此链接的htaccess代码为:
RewriteCond %{REQUEST_URI} ^/(\w+)/?$ [NC]
RewriteRule ^ profile.php?username=%1 [L,QSA]
但我的问题是,如果用户名包含句点(。),则此条件不起作用..
例如:如果链接是http://mysite.com/user.name
,则显示未找到页面..
我想只允许用户名中的句点,不需要连字符或下划线...
我如何使用htaccess检查它?
有人帮助我......
答案 0 :(得分:1)
将您的RewriteRule代码更改为:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([\w.]+)/?$ profile.php?username=$1 [L,QSA]
另请注意,在正则表达式中使用\w
已包含下划线。