在Windows服务器中IIS环境中,集成PHP时,由于经常上传大文件,需要修改PHP.ini来实现大文件上传,iis+php中,在最近修改之后,上传了大于2M的文件,服务器返回了HTTP500错误,改了php.ini中的upload_max_filesize也不行,最后解决方法如下:
一、修改php.ini 上传大小限制,(以上传500M以下大小的文件为例)
首页打开php.ini文件,查找以下选项并修改为:
file_uploads = On ;打开文件上传选项
upload_max_filesize = 500M ;上传文件上限
如果要上传比较大的文件,仅仅以上两条还不够,必须把服务器缓存上限调大,把脚本最大执行时间变长,加了下面的内容后php执行上传就没什么问题
post_max_size = 500M ;post上限
max_execution_time = 1800 ; Maximum execution time of each script, in seconds脚本最大执行时间
max_input_time = 1800 ; Maximum amount of time each script may spend parsing request data
memory_limit = 128M ; Maximum amount of memory a script may consume (128MB)内存上限
二、再修改iis的上传限制
1、打开“Internet 信息服务(IIS)管理器”;
2、关闭IIS服务;
3、双击“你的网站“→双击中间窗格中的“请求筛选”→单击右侧窗格的“编辑功能设置”→修改“请求限制”下面的“允许的最大内容长度”,默认是30M,随便改大一点,我改成300M,点击“确定”;
4、重新启动IIS,再上传试试,50M、90M都可以了。
通过以上两步,即可解决windows下IIS+PHP解决大文件上传最后500错误的方法。