现在我正在使用它:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9a-zA-Z-]+)/?$ profile.php?userName=$1 [L]
这适用于没有空格或下划线等的正常情况......只是基础知识。
我需要它对角色非常开放 - 比如John_doe john-doe john doe
。
我已经尝试了很多其他正则表达式,但我似乎无法找到适用于所有内容的版本。非常感谢任何帮助!
感谢。
答案 0 :(得分:0)
.
字符将匹配任何单个字符:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/?$ profile.php?userName=$1 [L]
请注意,由于字符编码的目的(以及SEO,但我不知道它是否与您相关),因此不鼓励使用此正则表达式。让地址仅包含小写字母数字字符和短划线(-
)总是更好。
有关mod_rewrite正则表达式的详细信息,请参阅this link。