【问题标题】:Remove % Signs From Url Through Htaccess通过 Htaccess 从 URL 中删除 % 符号
【发布时间】:2015-09-02 02:18:44
【问题描述】:

我目前在我的网站周围的网址上收到大约 400 个错误请求错误,其中包含 % 符号。这些网址不是在网站上生成的,而是被谷歌以某种方式获取的。

一个示例网址是

http://example.com/file/download/1/%s.html

我想知道如何重写这些网址以删除 % 符号。

【问题讨论】:

    标签: .htaccess mod-rewrite


    【解决方案1】:

    不要以为你能对此做任何事情。我假设因为这会生成一个 400,所以 % 未编码,如,请求字面意思是:

    /file/download/1/%s.html
    

    而不是

    /file/download/1/%25s.html
    

    因为%是一个保留字符,如果apache在请求中看到%s,它就假定%后面的2个字符是一个十六进制数字并尝试解码它,而s.不是'无效,因此它返回 400 错误请求。

    此请求甚至从未移交给 URL 处理管道,因此 mod_rewrite 或您放入 htaccess 文件中的任何其他内容都不会看到它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多