昨天公司安卓app上传了图片爆了下面这个错误
<"-//IETF//DTD HTML 2.0//EN"> <html><head> <title>413 Request Entity Too Large</title> </head><body> <h1>Request Entity Too Large</h1> The requested resource<br />/auth/upfile<br /> does not allow request data with POST requests, or the amount of data provided in the request exceeds the capacity limit. <hr> <address>Apache/2.4.7 (Ubuntu) Server at www.baidu.cn Port 443</address> </body></html>
用phpinfo查看了php.ini的参数
upload_max_filesize 20M
post_max_size 2M
恩,看来是post_max_size限制了上次文件的大小
于是我设置了php.ini的限制上传文件参数
upload_max_filesize 100M
post_max_size 8M
用phpinfo()查看了发现居然没有变化。
这就奇了怪了。
然后又设置了项目更目录下的.htaccess文件,添加了已下代码。
<IFModule mod_php5.c>
php_value upload_max_filesize 200M
php_value post_max_size 200M
php_value max_file_uploads 50
</IFModule>
再用phpinfo()看下,这次变了。
但是上传之后还是报这个错误。
尴尬了我的哥。
后面听安卓反映说测试服务器可以上传,正式服务器不可以。
然后又看到了提示错误有个443端口。
我恍然大悟,难道https的原因呢?
修改关键词重新搜索了资料。
终于给我找到了这个解决方法
http://stackoverflow.com/questions/18279007/413-request-entity-too-large-on-https
就是它啦
在域名配置文件里面修改添加了下面这个文件
<VirtualHost *:443> # ... <Directory ...> #... SSLRenegBufferSize 8388608 # 8M </Directory> </VirtualHost>
修改了Apache服务器接收数据缓冲区的大小,重启apache搞定。
啊哈哈哈哈哈哈,我真是个天才。
不对,这个和https应该没有关系吧!!!!
我天!!!