【问题标题】:Codeigniter & disallowed key characters issue with my htaccess我的 htaccess 出现 Codeigniter 和不允许的关键字符问题
【发布时间】:2012-02-23 12:22:58
【问题描述】:

我已经设置了一个 htaccess 规则(见下文)

RewriteRule ^images/(.*) http://www.mysite.com [R=301,L]

我的意图是将以下任何链接重定向到 site.com 问题是问号字符 (?),因为这会导致 Codeigniter 框架中出现“不允许的关键字符”错误。我可以修改配置文件中允许的字符,但出于安全目的不建议这样做。

我打算重定向的链接如下所示..

http://www.site.com/images/flash/main.swf?config=/flash/flash_output/133/location.htm

谁能提出一个不涉及changing the permitted characters in the config 的解决方法,或者这是唯一可行的选择吗?

【问题讨论】:

  • 允许 '?' 没有错在
  • 即使? 未在允许的字符中列出,codeigniter 也不会在 url 中限制它。除非您在某个地方更改了某些内容,否则我的安装允许这样做

标签: php security .htaccess codeigniter


【解决方案1】:

我建议对您的“配置”参数进行 URL 转义。访问哪个文件可能会感到困惑(在这种情况下,“?”字符位于意外位置)。除此之外,这是一种很好的做法。

http://www.site.com/images/flash/main.swf?config=%2Fflash%2Fflash_output%2F133%2Flocation.htm%0A

【讨论】:

    【解决方案2】:

    在命名文本框时可能会使用空格。

    产生此类错误的方法不正确:

    input type="text" id="test_text" name="test_text"

    正确方法:

    input type="text" id="test_text" name="test_text"

    【讨论】:

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