技术解析
修改文件上传大小限制(环境IIS+PHP)
修改文件上传大小,除了需要修改PHP的设置参数外,还需要注意以下几点:
1、上传文件如果太大,PHP缓存空间和执行时间需要适当延长。PHP缓存空间主要是指PHP临时目录剩余空间大小,还有就是PHP进程的内存限制,以及PHP运行执行的等待时间需要延长。
2、除了PHP设置外,还需要对IIS对应站点做一定的调整。
下面就具体来了解一下上传文件需要改动那一些参数:
PHP相关设置:
upload_max_filesize = 2M //PHP最大能接受的上传文件大小,默认值为2MB,需要根据您的上传文件大小修改适当数值。
post_max_size = 8M //PHP设定POST数据所允许的最大大小。默认值为8MB,需要注意的是post_max_size的数值大于upload_max_filesize的数值为佳.
memory_limit = 128M //内存上限。默认值为128MB,如果上传文件超过内存上限建议更改数值避免传输文件时内存不够。
max_execution_time = 30 //PHP最大执行时间。默认值为30秒,如果上传文件较大,30秒的PHP执行时间无法满足建议调高。max_execution_time =0,0表示没有时间限制
max_input_time = 60 //每个PHP页面接收数据所需的最大时间,默认60秒,如果上传文件较大,60秒的PHP执行时间无法满足建议调高。
upload_tmp_dir = //文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹,如果临时目录所在的磁盘空间不足已存储上传文件,请修改到其他盘符空间充足的地方
IIS相关设置:
点击iis管理器,并选中您需要上传文件的网站。在功能页选择“管理”下的“配置编辑器”。
设置上传超时时间限制。
点击下拉菜单节(S),选中system.web>httpRuntime
将executionTimeout的值设为00:30:00(即30分钟)
设置上传文件大小限制。
点击下拉菜单节(S),选中system.webServer>security>requestFiltering
展开requestlimits,将maxAllowedContentLength的默认值设为512000000(即500m)
注:这样修改直接就能生效,无需重启iis或者服务器。
如果您找不到设置,也可以直接在网站根目录建一个web.config文件,用此方法可以直接省略前面的步骤,web.config内容具体如下
<configuration>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="512000000" />
</requestFiltering>
</security>
</system.webServer>
<system.web>
<httpRuntime executionTimeout="1800" />
</system.web>
</configuration>
executionTimeout数值单位是秒,maxAllowedContentLength的数值单位是KB。
以上的就是IIS中怎么修改PHP程序中的文件大小限制的方法,各位站长朋友可以借鉴一下,如果您在服务器租用、服务器托管这一块有什么其他问题及需求可以咨询数据地带在线客服了解,提供海外高防服务器,美国大带宽服务器等,咨询客服有优惠哦!!!!