我的网站的入站链接在.html扩展名后面有%00。
示例:/directory/example.html%00
我想使用htaccess将此网址重定向到
/directory/example.html
由于%符号,我遇到此重定向问题。
在htaccess中,由于%符号,这不起作用。
RewriteRule ^directory/example\.html%00$ /directory/example\.html [R=301,L]
我已尝试用\首先转义%符号。
我在网上搜索了这个,但仍在努力。也许必须首先实施重写条件?由于%00是一个特殊字符(零十六进制代码),apache没有机会重写它?
答案 0 :(得分:1)
您可以从this question和RFC 3986看到“%”字符在网址中无效,除非它出现在网址的查询字符串中(在“?”分隔符之后)。您的RewriteRule是正确的,但是由于URL无效,请求永远不会到达您的站点。如果“%00”实际上不是文字字符串而是[NUL]字符(因为在URL中也是无效的),也是如此。