discuz上传附件过大提示Server (IO) Error的解决方法
今天遇到这个问题,我的php.ini里,已经设置了
memory_limit 为200M
post_max_size = 150M
upload_max_filesize = 100M
max_execution_time为600秒
但是上传了一个10来M的压缩包仍然提示Server (IO) Error。后来在这个站点对应的nginx.conf文件中,增加了一行client_max_body_size 100m;,如下:
server {
listen 80;
server_name xxx.com www.xxx.com ;
root /www/web/y/xxx/public_html;
index index.html index.php index.htm;
error_page 400 /errpage/400.html;
error_page 403 /errpage/403.html;
error_page 404 /errpage/404.html;
location ~ \.php$ {
proxy_pass http://127.0.0.1:88;
include naproxy.conf;
client_max_body_size 100m;
}
location / {
try_files $uri @apache;
}
location @apache {
proxy_pass http://127.0.0.1:88;
include naproxy.conf;
}
}
问题解决。该方法适用于所有nginx服务器。
注意:php.ini的配置中,后面这三项的值必须满足memory_limit>post_max_size>upload_max_filesize。