我正在尝试启用mod_write的重写URL,并且无法使其适用于URL格式的连字符。你能帮我解决这个问题。
www.domain.com/username/Lord-Voldermort
重定向到
www.domain.com/user.php?username=Lord Voldermort
答案 0 :(得分:1)
这应该有效:
RewriteRule ^ username /([a-z0-9 \ - ] +)$ / user.php?username=$1 [QSA,NC,L]
答案 1 :(得分:1)
我会用两个规则。第一次重写/用户名/ xxx到user.php?username = xxx,然后将每个' - '替换为'':
RewriteRule ^username/(.*)$ /user.php?username=$1
RewriteCond %{REQUEST_URI} ^user\.php\?username=
RewriteRule ^([^-]*)\-(.*) $1\ $2 [N]
编辑这不起作用,你必须切换两个任务的顺序。无论如何netadictos已经回答了你的问题。