在 PHP 环境中,上传附件的大小限制通过修改核心配置文件 `php.ini` 实现。企业环境默认路径通常为 `D:\SOFT_PHP_PACKAGE\php\php.ini`,部分独立主机可能位于 `D:\WEST263_PHP_PACKAGE\php\php.ini`,而 PHP 5.3 版本默认路径为 `D:\SOFT_PHP_PACKAGE\php5.3\php.ini`。对于 Linux 集成 WDCP 系统,配置文件路径为 `/www/wdlinux/apache_php-5.2.17/etc/php.ini`,可通过站点文件管理直接修改,修改后需在“系统管理—运行命令”中执行 `service httpd restart` 重启 Apache 服务。
在 `php.ini` 文件中,需重点调整以下参数:
- `upload_max_filesize`:直接控制上传附件的最大允许尺寸,默认值为 `8M`,可根据需求修改。
- `post_max_size`:定义 POST 请求的最大数据量,该值需大于或等于 `upload_max_filesize`,默认为 `10M`。
- `memory_limit`:脚本执行内存限制,建议设置为 `64M` 或 `128M`,默认为 `20M`,避免因内存不足导致上传失败。
- `max_execution_time`:脚本执行超时时间,单位为秒,默认为 `60`,若上传大文件可设为 `0` 表示无限制。
修改完成后,Windows 系统需在运行框中输入 `iisreset` 重启 IIS 服务以使配置生效。
Windows Server 2003 系统:
1. 停止 IIS 服务:在运行框执行 `iisreset /stop`。
2. 备份并编辑 `C:\windows\system32\inetsrv\metabase.xml` 文件(推荐先复制备份)。
3. 查找参数 `ASPMaxRequestEntityAllowed`,修改为所需字节数(如 `3000000` 对应约 2.86MB,实际大小=数值/1024/1024)。
4. 保存文件后执行 `iisreset /start` 重启 IIS。
下载附件限制需修改同一文件中的 `AspBufferingLimit` 参数,例如设置为 `20480000`(即 20MB)。
Windows Server 2008 系统:
1. 停止 IIS 服务:执行 `iisreset /stop`。
2. 修改文件权限:右键 `C:\windows\System32\inetsrv\config\schema\IIS_schema.xml`,在“属性—安全—高级”中设置所有者为 `Administrators`,并赋予完全控制权限,同时移除只读属性。
3. 使用文本编辑器打开文件,查找 `maxAllowedContentLength` 并调整数值(字节单位换算同 2003 系统)。
4. 恢复文件只读属性,重启 IIS(`iisreset /start`)。
5. 打开 IIS 管理器,选中站点,展开“ASP—行为—限制属性”,修改“最大请求实体主体限制”值,确保与第 3 步数值一致。
在 ASP.NET 环境中,上传大小限制通过 Web 应用程序的配置文件 `web.config` 调整。定位 `` 节点,若存在 `httpRuntime` 配置,则直接修改或添加 `maxRequestLength` 和 `maxQueryStringLength` 参数(如 `40960` 对应 40MB)。若节点不存在,需在 `` 内添加:
```xml
```
其中,`executionTimeout` 控制脚本执行超时时间(秒),`requestValidationMode` 指定 ASP.NET 版本兼容模式。
---