【发布时间】:2019-02-01 11:55:05
【问题描述】:
我为自定义应用程序编写了一个文件上传器,它将文件分成块并通过 ajax 将其发送到服务器。我遇到的问题是我可以使用 ini_get 拉出 upload_max_filesize 和 post_max_size,但是,我似乎无法获得 nginx 用来释放 413 错误的 client_max_body_size;答案空间被试图达到极限的人污染了。我希望我的软件能够检测并绕过限制(因为它已经很好地将事物分块)。如何将 client_max_body_size (或任何其他潜在的限制值)检测为 php 中的值(理想情况下以一种不需要修改 nginx 文件的通用方式,以便代码可供公众使用,但我会采取什么我可以得到)。提前致谢!
【问题讨论】:
-
如果它不能作为 PHP ini 变量使用,你可能需要运行一个命令来转储 nginx 配置值e.g.
exec('nginx -T')并 grep/parse 它以获得你想要的值 -
我认为您只能获得 PHP 的
upload_max_filesize,除非您对 nginx 的 conf 文件进行配置更改以在$_SERVER或类似文件中传递该值,但这对您的通用方法没有帮助 -
exec 似乎不是一个好主意。我的许可被拒绝了...如果我不得不走那么远,我想我可以理解为什么每个人都想达到这个限制...不过谢谢你的想法。