有多种设置,可以影响最大文件上传大小:
PHP_INI_PERDIR:以下设置可以在php.ini,.htaccess或httpd.conf中设置:
post_max_size
设置允许的发布数据的最大大小。要上传大文件,该值必须大于upload_max_filesize。如果配置脚本启用了内存限制,memory_limit也会影响文件上传。
max_input_time
这设置脚本允许解析输入数据的最大时间,例如POST,GET和文件上载。
PHP_INI_ALL:以下设置可以在php.ini,htaccess的httpd.conf的设置,或者与ini_set():
max_execution_time
这将设置在秒的最大时间的脚本允许运行在解析器终止之前。如果此限制太低,则在大型文件有时间上传之前,脚本将终止。
memory_limit
这设置脚本允许分配的最大内存量(以字节为单位)。如果配置脚本启用了内存限制,memory_limit也会影响文件上传。一般来说,memory_limit应该大于post_max_size。
POST上传方法
当通过POST方法上传文件,你还需要设置MAX_FILE_SIZE在你的HTML表单。有关详细信息,请参阅本:
共享主机
如果您使用的是托管共享,这是不可能的,你将能够访问系统的php.ini文件。但是,您可以在.htaccess中或在每个目录下的php.ini文件中设置值。一些共享托管服务提供商可能会阻止您这样做,因此您需要检查是否属于这种情况。
.htaccess
下面是一个示例。htaccess文件:
php_value upload_max_filesize 70M
php_value post_max_size 80M
php_value memory_limit 90M
php_value max_execution_time 240
php_value max_input_time 240
每目录的php.ini
通过以上的设置也可以在每个目录的php.ini文件改变。同样,这样做的能力可能会受到您的主机提供商的限制。有关更多信息,请参见这里: