就像在标题中描述的那样,我希望用mod_rewrite拥有干净的URL,遗憾的是我没有设法编写拟合正则表达式来完成我正在尝试的工作:
1.try:
RewriteRule ^([a-z]*)$ /index.html?city=$1 [NC,L]
2.try:
RewriteRule ^(.*)$ /index.html?city=$1 [NC,L]
但是没有一个正常工作,更不用说“üöä”
答案 0 :(得分:2)
第二个会更好,但是,它会循环进行,因为重定向到/index.html?city=$1
也会被处理,并且当它与RewriteRule匹配时,它也会被重定向。类似的东西:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.html?city=$1 [NC,L]
将更好地工作,因为它确保它只重定向不适用于现有文件或目录的请求。我尝试了上面的“münster”示例,并将其重定向为/index.html?city=m%c3%bcnster
,这可能是您需要的,也可能不是。