我想允许将非常大的文件上传到我们的 PHP 应用程序中(数百兆 - 8 GB)。然而,这存在一些问题。
Browser:
- HTML 上传的反馈很糟糕,我们需要轮询进度(这有点傻)或者根本不显示任何反馈
- Flash 上传程序在开始上传之前将整个文件放入内存中
Server:
- PHP 强制我们设置 post_max_size,这可能会导致易于利用的 DOS 攻击。我不想全局设置此设置。
- 服务器还要求 POST 变量中包含一些其他变量,例如密钥。我们希望能够立即拒绝请求,而不是在整个文件上传后拒绝。
要求:
- HTTP 是必须的。
- 我对客户端技术很灵活,只要它可以在浏览器中工作。
- PHP 不是必需的,如果有其他一些技术可以在 Linux 环境上很好地工作,那就太酷了。
upload_max_filesize 可以设置基于每个目录 https://www.php.net/manual/en/ini.core.php#ini.sect.file-uploads; post_max_size 也是如此
e.g.:
<Directory /uploadpath/>
php_value upload_max_filesize 10G
php_value post_max_size 10G
</IfModule>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)