您好,登錄后才能下訂單哦!
這篇文章主要介紹nginx中上傳文件大小報錯500怎么辦,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
nginx上傳文件大小報錯500的解決辦法
采用nginx作反向代理,出現了一個詭異的問題,小文件可以提交,大文件會報500內部錯誤。這個是什么原因導致的呢?
查wiki可知,上傳文件大小相關的有三個配置
client_body_buffer_size 配置請求體緩存區大小, 不配的話,
client_body_temp_path 設置臨時文件存放路徑。只有當上傳的請求體超出緩存區大小時,才會寫到臨時文件中
client_max_body_size 設置上傳文件的最大值
所以查出來,問題出現的原因是
1.文件大小超過了client_body_buffer_size
2.client_body_temp_path的臨時文件路徑居然沒有寫權限
以上兩個原因導致了返回500錯誤。
如果上傳文件大小超過client_max_body_size時,會報413 entity too large的錯誤。
原因知道了,修正就簡單了。
1.client_body_buffer_size 盡量設置的大點,這是基于速度的考慮,如果因為設置的過小,導致上傳的文件老要寫磁盤,那速度就太慢了。
2.client_body_temp_path 路徑要有可寫權限,這個是明顯的錯誤了。改正了就好
3.client_max_body_size 設置上傳文件的最大值,這個是基于安全的考慮,我們認為正常用戶不會或者基本不會上傳太大的文件。
可以設置為client_max_body_size 100m; 或者按照自己的業務來設置這個值。
以上是“nginx中上傳文件大小報錯500怎么辦”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。