如何重定向'%3e'或'>'在.htaccess

时间:2013-11-09 08:56:34

标签: .htaccess

道歉,如果之前已经涵盖过。我看了,但我是这个论坛和第一次海报的新手。

我在某些链接的末尾拾取%3e个字符。一个错误的>我肯定在哪里,我正试图追查。即使有验证员帮助它也很难。

与此同时,请问htaccess中重定向的语法是什么? 即只是删除该字符。

尝试但没有工作:

RewriteRule ^(.+)(\s|%3e)(.+)$ /$1$3 [R=301,QSA,L,NE]

1 个答案:

答案 0 :(得分:0)

虽然您在网址中看到%3e,但您希望在>上匹配,因为这是解码并发送到服务器的实际字符。此模式将匹配并重定向任何链接,最后为>

# Enable mod_rewrite and set the base directory
RewriteEngine on
RewriteBase /
RewriteRule (.*)?(>)$ $1 [R=301,NC,QSA,L]
  • (.*)? =任何角色,由于?
  • 而不贪心
  • (>)$ =网址末尾的>
  • [R=301] =执行301重定向
  • [NC] =无案例(不区分大小写)
  • [QSA] =查询字符串追加(包括重定向中的查询字符串)
  • [L] =上一条规则(停止处理更多规则)

使用http://htaccess.madewithlove.be/

进行测试

作为旁注,这可能意味着您错过了其中一个<A> nchor标签href属性的结束。例如<a href="http://example.com/page>My Link</a>将在您的浏览器中生成http://example.com/page%3e

的网址