目前,我的.htaccess上有以下代码,用于删除网址中波形符后面的字符串:
# Tilde removal from URL (e.g. example.com/~tildestuff/about to example.com/about)
RewriteCond %{THE_REQUEST} /~\w+/(\S+) [OR]
RewriteCond %{THE_REQUEST} /~\w+
RewriteRule ^ /%1 [R=302,NE,L]
这在大多数情况下都适用,但是如果我输入此网址:
http://www.example.com/~example/public/
它没有重定向,但确实有效:
http://www.example.com/~example/about-us
并被重定向到:
http://www.example.com/about-us
关于如何实现这一目标的任何想法?
非常感谢
答案 0 :(得分:0)
它应该已经适用于你的规则。尝试在第一条规则的末尾添加斜杠:
RewriteCond %{THE_REQUEST} /~\w+/(\S+/?) [OR]
RewriteCond %{THE_REQUEST} /~\w+
RewriteRule ^ /%1 [R=302,NE,L]