PHP+IIS上传大文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP+IIS上传大文件相关的知识,希望对你有一定的参考价值。

最近刚接触IIS服务器,在使用php上传大文件的时候,遇到了一些问题。通过查阅网上资料进行了总结,希望对各位有帮助。

 

第一步,检查PHP的配置。

打开php.ini配置文件
1.file_uploads 
设为On,允许通过HTTP上传文件 
2.upload_tmp_dir 
文件上传至服务器时用于临时存储的目录,如果没指定,系统会使用默认的临时文件夹(我的机器是/tmp)。 
3.upload_max_filesize 
允许上传文件大小的最大值,默认为2M。 
4.post_max_size 
Php可接收的post数据的最大值(包括表单里的所有值的总合),默认为8M。 
5.memory_limit 
每个php所最占的最大内存数,这个值要大于允许上传的文件大小。 
6.max_execution_time 
每个php运行的最长时间(秒),默认30秒。 
7.max_input_time 
Php解析POST/GET数据的最长时间(秒),默认60秒。
 
确认以上配置都可以之后,就基本能确保PHP配置没问题了。这时候应该还不能上传大概28M以上的文件。(错误提示:404找不到页面)
 
第二步:修改IIS服务器 fastCgi 模式运行PHP 上传文件大小限制
打开系统盘找到 C:\Windows\System32\inetsrv\config\schema目录,该目录下有一个IIS_schema.xml,右击打开文件,Ctrl+F,然后输入""
将defaultValue多加几个0。假如提示没有权限,就到该文件的“属性”把只读去掉,假如提示你没有权限,就点高级,将TrustedInstaller添加进来,然后再编辑那里把所有用户的权限改成“完全控制”。
到这里一般就可以了。假如还有问题再继续。
 
第三步:继续修改php.ini的配置。(假如提示 500内部服务器出错之类的问题)
log_errors = Off
display_errors = On
error_reporting = E_ALL & ~E_NOTICE
 
参考:
参考1|参考2

以上是关于PHP+IIS上传大文件的主要内容,如果未能解决你的问题,请参考以下文章

IIS7 Wordpress大上传HTTP错误

如何解决nginx上传大文件的限制

IIS7下swfupload上传大文件出现404错误

IIS上传大文件

IIS中的大文件上传问题解决方法

vista下如何设置IIS的上传文件大小