我有一个HTML表单,使用PHP将批量图像发布到服务器,但我似乎找不到一些将用户帖子限制为2GB的dratted设置。文件将精确发布到2GB,但在此之后,服务器将停止接受文件。
发布的$ _FILES数组包含所有原始文件名,但0
值为$_FILES['file']['tmp_name']
的图像可能会使总数超过2GB以及之后的任何内容。 <Directory /path/to/the/stuff>
# LimitRequestBody 0 # this didn't do anything
<Limit GET PUT POST>
Order Deny,Allow
Allow from my.ip.add.range
Deny from all
</Limit>
<IfModule mod_php5.c>
php_admin_value post_max_size 5000M
php_admin_value upload_max_filesize 200M
php_admin_value max_file_uploads 500
php_admin_value memory_limit 512M
</IfModule>
</Directory>
也是空的。
我已经更改的设置:
我的虚拟主机配置文件:
phpinfo()
ini_set('max_execution_time', 3000);
的输出确认了所有这些设置。
在相关php脚本的顶部:
cat /etc/redhat-release
这是在RedHat Enterprise Linux服务器上(df
- &gt; Red Hat Enterprise Linux Server 6.9版(圣地亚哥))
谷歌是否还有其他隐藏的神秘背景?
谢谢!
修改:
这些是100MB +主tif图像,我们有数百(数千?)来摄取,因此将上传分成较小的块(as the code is written)是不可行的。我将拍摄约5GB的折扣限制,因为大多数批次都在或低于......
更新:
正如@ TheRealJAG的评论所指出的,这是一个简单的磁盘使用问题。在大型上传期间运行/tmp
表示putenv('TMPDIR=/path/to/dir');
达到100%(2027408 1-K区块)非常快。
现在我希望我们的管理员能让我们增加tmp存储空间!!
或者实际上我将更改脚本中的php / tmp设置(php_admin_value upload_tmp_dir /path/with/more/memory/available
)
已解决:
我将此行添加到vhost config:
{
public byte[] video;
public int size;
}
这是Apache用户可写的目录,它正在调用脚本。