問題:
能上傳小於10k的文件,上傳大於10k的文件就會報500錯誤
解決辦法:
首先查看錯誤日志,看看報錯是什么
其次查看client_body_temp的權限問題
linux下面輸入命令nginx -V 看看自己的client_body_temp在哪個目錄下
注意nginx運行的用戶,目錄權限包括父目錄權限都要給足;不然就會500錯誤
關於client_body_temp目錄的作用,簡單說就是如果客戶端POST一個比較大的文件,長度超過了nginx緩沖區的大小,需要把這個文件的部分或者全部內容暫存到client_body_temp目錄下的臨時文件。
檢查步驟
- client_body_temp 是否設置為不可訪問,使得沒有權限寫臨時文件,導致報錯500 這是查目錄權限
- client_body_buffer_size 是否使用默認設置,8k或者16k ,文件大小超過此值, 導致報錯500 這是檢查nginx.conf配置
- client_header_buffer_size是否設置得比較大 這是檢查nginx.conf配置