问题标签 [suhosin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP SimpleXML、CodeIgniter 和 Apache 与 Suhosin
我有一个使用 CodeIgniter 框架用 PHP5 编写的应用程序。我让它在 Windows(使用 Xampp)和 Ubuntu(使用标准 Apache、PHP、MySQL 堆栈)上运行。
我有一个表单,它接受 XML,解析它(使用 simpleXML)并将结果发布到数据库中。
在 Windows 上 - 没问题,按预期工作。
在 Linux 上 - 大问题。它出错了。
我已经仔细检查了 XML,这很好。
我删除了大量的XML,似乎还可以。
我认为这与从表单发布的 XML 字符串的大小有关,但不确定。同样,在 Windows 上没问题 - 在 Linux 上,它会出错。
表格中发布的数据大小约为 160k(是的,这是很多文本,但它是自动化的 - 最终将达到 200k 左右)。
错误如下。
非常感谢任何帮助。
致命错误:在 /var/www/ci/system/application/controllers/system.php:49 中未捕获的异常“异常”和消息“字符串无法解析为 XML” 堆栈跟踪:#0 /var/www/ci/ system/application/controllers/system.php(49): SimpleXMLElement->__construct('') #1 [内部函数]: System->add_system() #2 /var/www/ci/system/codeigniter/CodeIgniter.php (233): call_user_func_array(Array, Array) #3 /var/www/ci/index.php(115): require_once('/var/www/ci/sys...') #4 {main} 抛出 /第 49 行的 var/www/ci/system/application/controllers/system.php
第 49 行如下所示:
$xml = new SimpleXMLElement($this->input->post('form_systemXML'));
编辑 - 固定
发现问题。Suhosin 安装在 Ubuntu 上。在文件 /etc/php5/apache2/conf.d/suhosin.ini 中,我启用了该行suhosin.post.max_value_length = 65000
并将值更改为 195000。重新启动 Apache,一切正常。谢谢各位指点。
php - 为什么 Suhosin 不是 PHP 核心的一部分?
Suhosin 似乎对 PHP 核心进行了修补和扩展,以保护用户免受核心缺陷的影响。似乎一些聪明人也在使用这个系统。由于它看起来是一件好事,我很好奇为什么它不是 PHP 核心的一部分。有人知道吗?
更新:显然一些 Linux 发行版默认也使用 Suhosin 打包 PHP。这对于 Debian(至少是 Lenny)和 Arch Linux 来说似乎是正确的。任何其他发行版默认使用 Suhosin 打包 PHP?
php - PHP 的安全性如何?
我对 PHP 编码有点陌生,我知道如果您没有清理您的 PHP 代码,恶意用户可能会入侵网站。我想知道他们是否需要一个数据输入框(例如用于文件提交或用户名/密码输入字段)?
像“include (header.php)”这样的命令是否也需要某种安全性,还是它们天生安全?
php - php会话加密
我想像在 suhosin 中一样加密会话数据,是否有任何图书馆提供该功能?
php - 如何查看是否安装了Suhosin?
我不熟悉 Suhosin(从未使用过),但如果可能的话,我需要使用 PHP 检查它是否已安装。这是我正在编写的安装程序的一部分。谢谢。
php - PHP APC 上传永远不会被标记为完成
我有一个运行 PHP 5.2.6-1 的 LAMP 设置,带有 Suhosin Patch (0.9.6.2) 和 Zend (2.2.0) 并启用了 APC,用于使用 ajax cal 获取状态并生成进度的文件上传脚本酒吧。
一切似乎都在工作,文件上传完美并在网站上正确显示,或者如果您下载它,但它永远不会被 APC 标记为“完成”,文件大小也没有达到实际大小(在 APC 调用中,上传的文件就好了)。
APC 从未看到文件完全上传的原因可能是什么,我该如何解决这个问题?我目前正在为此运行一种相当 hack'n'slash 的方式,因为文件大小总是达到至少 90%,我让我的 ajax 调用检查大小,如果它在 90% 并保持在那里进行 3 次更新,它再等 5 秒,然后期望它完成(如果它是一个大文件并且它真的还没有完成,那就不理想了)
php - 查询变量不能超过 512 个字符
我正在努力读取数组中包含超过 512 个字符的查询变量$_GET
。但是,如果我使用 解析查询字符串parse_string
,我可以从结果数组中很好地读取它。
例子:
这对我来说毫无意义,因为在内部$_GET
使用parse_str
从查询字符串派生查询变量。我错过了什么吗?
php - PHP:内存不足错误,怎么办?
当我尝试裁剪图像时收到此错误,我刚刚上传。我刚刚上传的图像大约 3MB。
这是错误
当我尝试使用此功能时会发生这种情况: imagecreatefromjpeg($src);
我在顶部:
那么它怎么会内存不足,我应该如何解决这个问题?我的图片上传标准限制为 6MB。(虽然它可以很好地上传到服务器,但是当我使用裁剪时,我在使用 imagecreatefromjpeg() 函数时遇到错误,并且“内存不足..”)
php - suhosin替代品
suhosin 有什么替代品吗?或任何类似的最新工具?我使用 eaccelerator,我听说 suhosin 无法相处。
php - CakePHP Cookies 被打乱 - Suhosin 相关
出于某种原因,我无法在任何页面上从我的 CakePHP 应用程序中读取任何 cookie,它们被设置后,唯一返回的是乱码文本。
我的代码很简单:
我取消注释 $this->Cookie->write() 行,我得到的只是一堆随机控制字符。我最近也升级到了 CakePHP 1.3,但是 AFAIK 这不应该像这样影响 cookie ......这在我更改 server之前工作正常,这一定是我问题的根源。
更新 在进一步探索之后,我发现这是一个已知问题,适用于 PHP 的 Suhosin 安全补丁会影响 rand() 和 srand() 方法,我已将 Suhosin 配置为允许 rand() 函数,但它仍在发生,是否存在那里有更有效的工作?