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

Kohana、.htaccess和$\u GET

  •  5
  • Sampson  · 技术社区  · 15 年前

    RewriteRule .* index.php?kohana_uri=$0 [PT,L]
    

    这让我的漂亮URL再次工作,但今天我发现它可能会破坏我的内部搜索引擎,它也使用GET样式变量:

    /search?terms=php
    

    我假设规则破坏了任何脚本从$\u GET读取的能力,如果是这样,我该如何补救?

    3 回复  |  直到 15 年前
        1
  •  8
  •   Pascal MARTIN    15 年前

    可能在重写规则时使用QSA,如下所示:

    RewriteRule .* index.php?kohana_uri=$0 [PT,QSA,L]
    

    manual of mod_rewrite (引述):

    “qsappend | QSA”(查询字符串追加)

    将替换字符串的 现有字符串,而不是替换 通过重写将数据传输到查询字符串

    可能会有帮助(没有在您的特定案例中进行测试,但我记得不久前我曾使用过它,用于解决类似这样的问题)

        2
  •  1
  •   arbales    15 年前

    RewriteCond $1 !^(search) ,或其变体。

        3
  •  0
  •   user2873446    11 年前

    如果您想使用标准实践,而不使用查询字符串,则只需遵循以下步骤,它将像localhost一样工作,并且无需更改重写规则。

    现在,您需要重新启动Web进程:

    1.)登录到您的客户经理。 2.)单击网络托管。 4.)在统计和;监视器部分,单击系统进程。 5.)在左侧列表中,单击要查看的流程,或单击“所有流程”一次查看所有流程。 6.)要结束流程,请单击工具栏上相应的结束按钮。

    现在您可以使用URI_协议作为Auto。