gpt4 book ai didi

mod-rewrite - 如何重写最后有意外 %20 的网址?

转载 作者:行者123 更新时间:2023-12-04 03:09:55 24 4
gpt4 key购买 nike

我得到了一堆指向我的网站的反向链接,这些链接具有正确的 URL,只是有一个意外的尾随空格,所以这些链接的尾随 %20 ,这会导致页面未找到错误。

我尝试了这方面的变化:

RewriteRule ^/%20 /

但它不起作用。

RewriteCond还需要声明吗?

请注意,这是一个 IIS 6 服务器,这些是我要链接到的 Wordpress 页面。

有人请告诉他摆脱 %20的密码在 URL 的末尾。

谢谢!

最佳答案

您可以 永久重定向 所有相关网址的尾随 %20到没有尾随 %20 的相同网址通过使用以下规则:

如果您使用 UrlDecoding Off在您的 iirf.ini , 用:

RedirectRule (.*)%20$ $1 [R=301]

否则,IIRF 会在尝试应用规则之前自动为您解码 URL。因此,您可以使用:
RedirectRule (.*)\s$ $1 [R=301]

为了测试这个使用 testdriver.exe :
  • 将上述规则放在名为 iirf.ini 的文件中.
  • 创建一个名为 SampleUrls.txt 的文件包含一些测试 URL,例如:
    /                      NO REWRITE
    /%20 REDIRECT 301 /
    /article NO REWRITE
    /article%20 REDIRECT 301 /article
  • 使用类似于 %iirfpath%\testdriver.exe -d . 的命令调用 testdriver

  • 请注意:测试驱动程序做 不是 解码 URL。

    您应该得到类似于以下的输出(我删除了一些换行符):
    TestDriver: linked with 'Ionic ISAPI Rewriting Filter (IIRF) 2.1.1.28 x64 RELEASE'.
    TestDriver: The IIRF library was built on 'Aug 8 2011 02:26:29'

    Processing URLs...(.\SampleUrls.txt)

    ***
    Retrieving server variable that is not supported by TestDriver (SCRIPT_NAME)

    NO REWRITE '/' ==> --
    OK

    ***
    Retrieving server variable that is not supported by TestDriver (SCRIPT_NAME)

    REDIRECT 301 '/%20' ==> '/'
    OK

    ***
    Retrieving server variable that is not supported by TestDriver (SCRIPT_NAME)

    NO REWRITE '/article' ==> --
    OK

    ***
    Retrieving server variable that is not supported by TestDriver (SCRIPT_NAME)

    REDIRECT 301 '/article%20' ==> '/article'
    OK


    0 Errors in 4 Total Trials

    关于mod-rewrite - 如何重写最后有意外 %20 的网址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7081270/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com