CodeIgniter 中允许 URL 中包含任何字符

2023-12-08

我正在使用 CodeIgniter PHP 框架。我使用JS动态加载PHP页面:

$('someIFrame').writeAttribute(
   'src',
   '/index.php/controller/method/' +
   escape(userGeneratedString)
);

当我运行这个时,CodeIgniter 给了我这个错误:

http://192.168.0.81/index.php/controller/method/dude%27s%20face
An Error Was Encountered
The URI you submitted has disallowed characters.

这是完全不正确的,因为相关 URL 不包含任何不允许的字符。我的配置文件允许该 URL 中存在的所有字符:

$config['permitted_uri_chars'] = 'a-z 0-9~%.:_()@\-';

所以我很沮丧,只是允许所有角色来防止错误。

// Leave blank to allow all characters -- but only if you are insane.
// DO NOT CHANGE THIS UNLESS YOU FULLY UNDERSTAND THE REPERCUSSIONS!!
//$config['permitted_uri_chars'] = 'a-z 0-9~%.:_()@\-';
$config['permitted_uri_chars'] = '';

此行上方的警告消息听起来很可怕。允许所有字符可能会出现什么问题?我会被黑客攻击吗?


codeigniter 中的 url 是网址解码, so %27翻译为'它不在您允许的字符列表中,因此触发了错误。所以你需要允许角色一旦解码。 换句话说,当 codeigniter 看到你时%27,它已经被解码为'.

Source

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CodeIgniter 中允许 URL 中包含任何字符 的相关文章

  • 在 Yii 的标准中如何获得计数 (*)

    我正在尝试构建一个具有以下内容的查询group by属性 我正在尝试得到id和count它一直告诉我count is invalid列名 我怎样才能得到count来自group by询问 工作有别名 伊伊 1 1 11 其他不及格 crit
  • 检查 touchend 是否在拖动后出现

    我有一些代码可以更改表的类 在手机上 有时表格对于屏幕来说太宽 用户将拖动 滚动来查看内容 但是 当他们触摸并拖动表格时 每次拖动都会触发 touchend 如何测试触摸端是否是触摸拖动的结果 我尝试跟踪dragstart和dragend
  • 如何通过php获取网页的Open Graph协议?

    PHP 有一个简单的命令来获取网页的元标记 get meta tags 但这仅适用于具有名称属性的元标记 然而 开放图谱协议如今变得越来越流行 从网页获取 opg 值的最简单方法是什么 例如 我看到的基本方法是通过 cURL 获取页面并使用
  • javascript中按tab键时如何调用函数?

    我有一个这样的功能 function whenEmpty field if field value field style backgroundColor ffcccc alert Please fill the field field f
  • 使用 json_encode() 函数在 PHP 数组中生成 JSON 键值对

    我正在尝试以特定语法获取 JSON 输出 这是我的代码 ss array 1 jpg 2 jpg dates array eu gt 59 99 us gt 39 99 array1 array name gt game1 publishe
  • PHP 中的引用

    我正在编写一个自定义博客引擎 并且希望拥有类似于 Wordpress 的引用 我可以查看 WordPress 源代码 但我真的更喜欢某种教程 但到目前为止我还没有找到 有没有关于在 PHP5 中实现 trackbacks 或 pingbac
  • 如何在 phalcon 框架中同时连接多个数据库在模型类中同时使用两个而不仅仅是一个

    在我的代码中我有两个数据库ABC and XYZ 我想在同一模型中使用两个数据库 而不是 phalcon 中的解决方案是什么 如何为此实现多个数据库连接 one
  • 如何删除文件

    我们有一个脚本 scripts ourscript php和一个文件 media movie1 flv 当我们运行时 我们如何删除这个文件ourscript php Using unlink http php net manual en f
  • 如何在 Angular 中从父组件访问子组件?

    I have mat paginator在子组件a中 如下所示 子组件 html
  • 如何在 Dart 中以正确的方式重定向和重新加载?

    在 Dart 中进行重定向和重新加载的首选方法是什么 我们是否只使用 window location href window location href 有几种不同的方法可以处理 URI 更改 每种方法都有自己的用途 当您想要将用户发送到另
  • 我可以在 PHP 会话变量中安全地存储用户名和密码吗?

    我想在 REST api 之上制作一个轻量级的 web 应用程序 用户只需进行一次身份验证 从那时起 所有针对 web api 的请求都希望通过以某种方式保持用户名和密码有效来完成 我已经做了一个工作原型我在哪里将用户名和密码存储在会话变量
  • Chartjs刻度标签位置

    尝试让 Y 轴刻度标签看起来像image https i stack imgur com XgoxX png 位于秤顶部且不旋转 缩放选项当前如下所示 scales yAxes id temp scaleLabel display true
  • 为什么“tbody”不设置表格的背景颜色?

    我在用 tbody 作为 CSS 选择器来设置background color在一个表中 我这样做是因为我有多个 tbody 表内的部分 它们具有不同的背景颜色 我的问题是 当使用border radius在细胞上 细胞不尊重backgro
  • 反向引用在 PHP 中不起作用

    最近我一直在研究 更多的是在实践中说实话 正则表达式 我注意到他的力量 我提出的这个要求 link https stackoverflow com questions 30380397 take the text up to a speci
  • 如何在jquery中获取保存时间和当前时间的差异?

    我想在 javascript 或 jquery 中获取保存时间和当前时间之间的时差 我节省的时间看起来像Sun Oct 24 15 55 56 GMT 05 30 2010 java中的日期格式代码如下 String newDate 201
  • JavaScript onresize 事件多次触发

    我在尝试仅在触发 onresize 事件时运行一次函数时遇到一些麻烦 我已经看过这个问题DOM onresize 事件 https stackoverflow com questions 1500312 javascript onresiz
  • 如何在 Google 地图 V3 中创建编号地图标记?

    我正在制作一张上面有多个标记的地图 这些标记使用自定义图标 但我还想在顶部添加数字 我已经了解了如何使用旧版本的 API 来实现这一点 我怎样才能在V3中做到这一点 注意 当您将鼠标悬停在标记上时 标题 属性会创建一个工具提示 但我希望即使
  • PHP递归遍历对象树[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用异步调用时如何从 javascript 更新元刷新?

    我有一个系统 它使用元刷新来注销页面 该系统会在空闲用户后进行清理 不用担心 服务器也会导致会话超时 我开始通过 ajax 进行一些操作 不是真正的 xml 但这不是重点 我可以运行从异步请求返回的javascript 所以我想知道是否可以
  • 使用 crypt() 加密

    我目前正在做一个非常安全的登录系统 但我是 crypt 函数的新手 需要一些快速帮助 我在注册过程中使用 crypt 加密密码字符串并将其保存到数据库中 但是 我如何在登录过程中解密密钥 或者我应该怎么做 或者是否可以对提交的密码字符串进行

随机推荐

  • 尽管文件已被另一个程序更改,但 fread 未读取更新的值

    有两个程序同时处理我的特殊文件 他们有一个共同的起点 define TASK POSITION 0x0100 include
  • Swing 中自动增大字体大小

    I would like to know if there are methods of automatically increasing the font size based on the size of a component I h
  • 检索变量声明

    当我几百岁的时候 我怎样才能找到我是如何第一次声明某个变量的 从我第一次声明的地方开始 例如 我声明了以下内容 a lt c vectorA vectorB vectorC 现在我想看看我是如何声明的 我怎样才能做到这一点 谢谢 您可以尝试
  • 参数化 pytest 夹具

    据我从有关 pytest 夹具参数化的文档中了解到 它使用给定的参数创建夹具的副本 从而调用需要具有不同副本的夹具的每个测试 我的需求有点不同 假设有一个固定装置 pytest fixture def sample foo return F
  • “svn:externals”有什么好处?

    如果我没有遇到过 我就不会了解 svn externals这一页 所以 我设置了我的工作文件夹 然后 mkdir lib vendor svn add parents lib vendor svn ps svn externals symf
  • 用于检测浏览器功能/插件的 JavaScript 库

    我正在尝试找到一个 最好是开源的 JS 库来确定尽可能多的有关用户 Web 浏览器环境的信息 我知道可以获得以下数据 屏幕分辨率 User Agent Accept Language 和其他首选项通常在 HTTP 标头中发送 安装的插件 通
  • 如何在 Flutter 中将事件从一个有状态小部件广播到另一个有状态小部件

    我想将事件从一个有状态小部件广播到另一个有状态小部件 但似乎找不到一种方法 我安装了这个插件 event 1 1 4 但它没有触发 我想要如下所示的东西 Stateful Widget 1 SomeEventClass broadcastE
  • PHP 中的 GET URL 参数

    我试图在 php 中将 URL 作为 url 参数传递 但是当我尝试获取此参数时 我什么也没得到 我使用以下网址形式 http localhost dispatch php link www google com 我正在努力解决这个问题 G
  • 使用 JSTL XML taglib 时出错 - 属性 xml 不接受任何表达式

    当我尝试使用 JSTL XML 标记库时出现以下错误 server side transform jsp 51 0 According to TLD or attribute directive in tag file attribute
  • Java 中 ContainsAll 的成本是多少?

    我发现containsAll a List接口方法 在今天的一些编码中 它看起来非常光滑 有谁知道这在性能 迭代方面要花多少钱 The 文档在这方面没有提供太多 使用来源 卢克 编辑 正如博佐指出的 你问的是List containsAll
  • 在 ES6 中导入所有内容,但不在对象内部[重复]

    这个问题在这里已经有答案了 无论如何不写这个 import replace in mtstr tot width rationalize eval expression ascii to latex latex to ascii getIn
  • WIX(删除所有以前的版本)

    在 添加或删除程序 下我可以看到五个版本 ApplicationName v3 0 4 0 ApplicationName v3 0 4 18 ApplicationName v3 0 5 27 ApplicationName v3 0 5
  • Facebook iFrame 应用程序:如何从 URL 查询字符串传递数据

    我有一个带有图片库的 Facebook 应用程序 它是在 Flex 4 中构建的 我想允许用户链接到特定图像 那怎么办呢 我看到完成此操作的唯一方法是在 Facebook 页面 URL 中添加像 my picture asd jpg 这样的
  • 表排序器。按下拉选择排序

    我有一个简单的表 其中包含 ID 和姓名 名字 姓氏 字段 在表格上方有一个下拉列表 其中包含选项 ID 名字 姓氏 根据下拉表的选择进行排序 我不知道如何根据选择触发 tablesort 排序功能 也许这就是你想要的 demo HTML
  • 如何在nextjs中用两个url链接同一页面

    如果用户正在搜索特定城市 我想在页面名称之前的网址中显示城市名称 如果用户没有搜索特定城市 那么我想显示正常的网址 我们如何在 Next Js 中实现这一点 Ex http localhost 3000 Delhi furniture ht
  • 为什么在 Bash 中“false && true”不使用 set -e 退出? [复制]

    这个问题在这里已经有答案了 为什么第三个案例返回成功 退出代码为 0 case 1 bash c set e false true echo success echo success 0 case 2 bash c set e true f
  • 具有动态过滤器/搜索条件的 Ember 路线

    由于以下问题 我已经被困了好几天了 我的用例是我有一个包含数百万个地址的数据库 我想从网络应用程序中搜索它们 显示结果列表 然后显示有关单个地址的信息 一个重要的目标是将搜索条件表示为 URL 的一部分 这样用户就可以返回到以前的搜索 甚至
  • MSI:如何在 InstallValidate 期间卸载时停止服务 - 这仍然可以工作吗?

    我想知道 如果服务被标记为 具体如何以及何时尝试停止Remove uninstall Stop uninstall 在 WiX 项目文件中 我为什么要问 卸载时 重新启动管理器无法识别或正确处理该服务 从而导致 重新启动对话框 我将调试器附
  • Django 中的“正向外键”和“反向外键”是什么?

    当阅读与 Django 相关的主题时选择相关 and 预取相关 在一些网站上 包括堆栈溢出 我经常看到这样的词转发外键 and 反向外键但我在 Django 文档中找不到定义 models py from django db import
  • CodeIgniter 中允许 URL 中包含任何字符

    我正在使用 CodeIgniter PHP 框架 我使用JS动态加载PHP页面 someIFrame writeAttribute src index php controller method escape userGeneratedSt