今天我在vps中配置了DiscuzX論壇,但是在上傳文件時出現了Upload Error: 500,經過分析發現是配置上傳大小問題,后來找了解決辦法,下面分享給各位.
這種情況只出現在運行在fcgid模式下的PHP里,MaxRequestLen參數設置值過小導致的,但是原來我也裝過,沒遇到過這種情況啊?而且我也沒設置過MaxRequestLen,按道理他會保持默認值才對.
于是抱著不找到問題原因不罷休的,找了相關的參數資料,于是到了Apache官方站的資料一看,原來從Apache 2.3.6開始,這個參數的默認值從之前的1GB(汗一個)調整到了131072字節(128KB),于是上傳128KB以下的文件不會出問題,但是超過這個值就會報500錯誤了.
原來我用的OS一般是Ubuntu Server 10.04 LTS,而這次新裝的服務器用了Ubuntu Server 12.04 LTS,看來就是問題所在了,12.04中的Apache版本較新,于是這個參數默認值被改成了128KB導致上傳文件失敗,并報500錯誤.
找到原因后,解決辦法就簡單了,只需要增加這個參數的配置即可.
打開Ubuntu下Apache的fcgid配置文件:
#vim /etc/apache2/mods-enabled/fcgid.conf //開源軟件:Vevb.com
在這個文件里增加下面的參數設置即可,我這里設置為10M,比PHP上傳最大值8M略大即可,你可以根據自己的需要,調整這個參數的值,注意這個參數的單位是字節.
MaxRequestLen 10240000
保存退出,重啟Apache:
#/etc/init.d/apache2 restart
再測試一遍,問題解決.
新聞熱點
疑難解答