我有一个URL格式的问题。
我需要将/en发送到/
问题是我只需要/en (确切地说),而不是/en/foo...
我知道如何处理以.html结尾的字符串,但这里还有其他URLS,它们也是匹配的。
会非常感谢你的帮助。
发布于 2013-01-07 14:21:53
您需要在RewriteCond
中指定字符串的结尾,例如
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/en$
RewriteRule ^(.*)$ / [L,R=301]
请注意,条件模式和重写规则模式都是perl兼容的正则表达式(添加了一些内容):
对于锚点:
编辑
顺便说一句,在http://htaccess.madewithlove.be/上有一个非常好的htaccess测试器,你可以用它来测试规则。
发布于 2013-01-07 14:40:00
通过httpd.conf
启用mod_rewrite和.htaccess,然后将以下代码放入DOCUMENT_ROOT
目录下的.htaccess
中:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteRule ^en/?$ / [L,R=301,NC]
这会将/en
或/en/
重定向到/
还请注意,由于这里使用了NC (忽略大小写)标志,/EN
也将被处理。
https://stackoverflow.com/questions/14197737
复制相似问题