代码之家  ›  专栏  ›  技术社区  ›  AJFMEDIA

&在url中编码为%2526的符号

  •  0
  • AJFMEDIA  · 技术社区  · 16 年前

    我需要替换我的url中的&登录的编码值,以便搜索查询成功。我正在努力从这个解决方案中复制一个类似的方法 post 查询字符串如下。

    我希望这样

    lovelakedistrict.com/result/?q=布鲁克菲尔德+床+早餐

    2 回复  |  直到 9 年前
        1
  •  2
  •   bobince    16 年前

    正如奥拉隆所说,应该是 Bed+%26+Breakfast ,作为 & 事实上

    <form id="form" action="/result" method="get">
    

    生成正确的查询,如:

    http://www.lovelakedistrict.com/result?q=Brookfield+Bed+%26+Breakfast
    

    但是,自从 /result /result/ ,并且由于某些原因同时更改查询字符串,将其双重编码为 %2526

    我不知道为什么会这样,这不是正常的Apache行为,你有没有一些不可靠的重写规则?但是您应该能够通过将表单指向正确的URL来避免这种情况:

    <form id="form" action="/result/" method="get">
    
        2
  •  1
  •   aularon    16 年前
    RewriteCond %{QUERY_STRING} (.*?)%(25)+26(.*?%(25)+26.*)
    RewriteRule ^ %{REQUEST_URI}?%1+%3 [N]
    RewriteCond %{QUERY_STRING} (.*?)%(25)+26(.*)
    RewriteRule ^ %{REQUEST_URI}?%1+%3 [L,R=301]
    

    20 进入 26

    推荐文章