Flash Upload與Http Error 400 Bad Request奇怪問題 | (09-02-2008) |
續上一篇,另一個奇怪問題,Flash Upload無法上傳問題。眾所周知,Flash Upload是Flash Player 8開始支援的功能,不過,可以說是一個問題多多,功能不全的雞肋功能。昨天將本地測試沒有問題的東西Upload到客戶Server,當測試時,發現不能Upload,所有Upload東西都被擋了,出現HTTP Error 400 Bad Request。 我第一個反應,難道是Server不支援帶參數的路徑?因為Flash Upload功能不全,Upload檔案時,是不能帶其他參數,所以人們解決方法是將參數加在路徑上,以Get方式傳送,例如: upload.php?userid=1
我立即用一個簡單Flash Upload Sample,不帶參數到客戶Server測試,結果也是一樣,再試Upload到一個錯誤不存在路徑,都被擋了,證明不是程式問題,是Apache上問題。 一直知道Flash Upload在Apache上有可能出現HTTP Error 403問題,因為Flash Upload的數據Header,格式不正確(至今Adobe都不去解決),被裝了mod_security的Apache當作非法侵入數據擋了。網上流傳同一個解決方法,在.htaccess加上來停止mod_security: SecFilterEngine Off
SecFilterScanPOST Off 我的問題是HTTP Error不是403,是400,再加上以上兩句,整個網站出現Internal Server Error 500(已經設定了Options FollowSymLinks和AllowOverride all),於是不往mod_security方面想,繼續Google,發現根本沒有人遇到HTTP Error 400問題。 反復閱讀客戶Server的httpd.conf和它引用了module,發現它真的用了mod_security,先不要Apache load mod_security這東西,Flash Upload就操作正常了! 好了,但是為什麼在.htaccess層面不能停止mod_security它?最後我要在Virtual Host 的conf檔案加上SecRuleEngine Off才可以停止它。 |
|
本文章由發表。 |
意見 | |
沒有意見。 |
|
同組文章 |