解决IIS7+php的组合上传限制30M的问题

IIS7+php的默认上传限制30M在解决php服务上的上传限制配置外还有针对IIS的请求大小的限制,而这一块的限制经常让人摸不着头脑。

现对整体的上传请求大小修改步骤总结如下:

1.php.ini
该文件的实际位置请打印

<?php
phpinfo();

进行确认,修改upload_max_filesize = 512M(原始2M),post_max_size = 600M(原始8M),post_max_size 必须大于等于upload_max_filesize

2.applicationHost.config,位于C:WindowsSystem32inetsrvconfig,在中加入

<requestLimits maxAllowedContentLength="536870912" />

如果已经有requestLimits标签的话只需要修改数值就好。
该步骤如果没有权限编辑,可以在iis管理器中的,管理->配置编辑器,中进行配置并应用。
该配置的位置在:

system.webServer/security/requestFiltering
requestLimits
maxAllowedContentLength

3.IIS_schema.xml,位于C:WindowsSystem32inetsrvconfigschema,查找maxAllowedContentLength,将其值改为536870912
该文件是受保护的,必须先将文件所有人改为administrator,并给administrator分配完全控制权,去除文件的只读属性

4.web.config,位于站点根目录,如果的话没有可以新建一个,完整的内容如下

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
     <system.webServer>
          <security>
               <requestFiltering >
                    <requestLimits maxAllowedContentLength="536870912" ></requestLimits>
              </requestFiltering>
         </security>
    </system.webServer>
</configuration>

完成以上操作,文件上传的上限就被提升到512M了

-----------------------------------------------------
说明:
  a).代码仅供学习交流
  b).本文根据自身经验及网络总结所作,如有错误,谢谢指教
  c).转载请注明出处。
-----------------------------------------------------
原文地址:https://www.cnblogs.com/xqbumu/p/6497822.html