我们当前的 htaccess 设置正确地将 url 转换为:site.com/page.php?sid=Friend 到 site.com/Friend
然而,由于不相关的疏忽,我们几乎所有的 URL 都被双重索引为 site.com/Friend> 因为大于号是一个特殊字符,它不会调用 page.php,所以 > 需要在 htaccess 中被剥离,无法在 page.php 中完成。更重要的是,它们的索引方式如下:site.com/Friend%3E 也可能需要删除。
我们想要的是有另一个指令来查找 >(或 %3E)的结尾,将其剥离,然后重定向到没有那个结尾的变量 > 本质上是这样 site.com/Friend> (或 site.com/Friend%3E)仍然指向 site.com/Friend
感谢您的帮助。
最佳答案
将此添加到您的规则顶部:
RewriteRule ^/?(.*)>$ /$1 [L,R=301]
您可以使用 >
,因为在 RewriteRule
中匹配时 URI 会被解码。
关于.htaccess - 在 htaccess 中从 URL 中删除不需要的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11651243/