目錄
- 1.背景
- 2.Nginx 常見的幾種報錯
- 3. 解決500錯誤
- 1.資源不足
- 2.nginx配置文件錯誤
- 總結(jié)
1.背景
最近在操作nginx 的時候出現(xiàn)了 Nginx 500 內(nèi)部錯誤,在此記錄一下原因,項目采用的是前后端分離方式,后端SpringBoot ,前端是Vue 部署到Nginx 下。
2.Nginx 常見的幾種報錯
500–服務(wù)器內(nèi)部錯誤:服務(wù)器遇到錯誤,無法完成請求
501–尚未實施:服務(wù)器不具備完成請求的功能,如:當(dāng)服務(wù)器無法識別請求方法時,服務(wù)器可能會返回此代碼
502–網(wǎng)關(guān)錯誤:服務(wù)器作為網(wǎng)關(guān)或代理,從上游服務(wù)器收到了無效的響應(yīng)
503–服務(wù)不可用:服務(wù)器目前無法使用,可能由于停機或者超載,通常為暫時的狀態(tài)
504–網(wǎng)關(guān)超時:服務(wù)器作為網(wǎng)關(guān)或者代理,無法及時從上游服務(wù)器接收請求
505–http版本不受支持:服務(wù)器不支持請求中所使用的http協(xié)議版本
3. 解決500錯誤
1.資源不足
查看服務(wù)器的硬盤空間是否滿了
linux 系統(tǒng):df -h
window 系統(tǒng):
cmd(Dos)命令查看硬盤和內(nèi)存/CPU信息等 1.查看磁盤信息:freedisk 可以查看每一個盤的剩余空間 wmic diskdrive 可以看出來牌子和大小. Wmic logicaldisk 可以看到有幾個盤,每一個盤的文件系統(tǒng)和剩余空間 wmic volume 每個盤的剩余空間量,其實上一個命令也可以查看的 fsutil volume diskfree c: 這個命令查看每一個卷的容量信息是很方便 2.CPU信息 wmic cpu 上面顯示的有位寬,最大始終頻率, 生產(chǎn)廠商,二級緩存等信息 3.內(nèi)存信息 wmic memorychip 可以顯示出來三條內(nèi)存,兩條256,一條1G的,速度400MHz 4.BIOS信息 wmic bios 5.電腦型號\SN\UUID等 wmic csproduct*
2.nginx配置文件錯誤
這里不是指語法錯誤,nginx如果配置文件有語法錯誤,啟動的時候就會提示。當(dāng)配置rewrite的時候,有些規(guī)則處理不當(dāng)會出現(xiàn)500錯誤,請仔細(xì)檢查自己的rewrite規(guī)則。如果配置文件里有些變量設(shè)置不當(dāng),也會出現(xiàn)500錯誤,比如引用了一個沒有值的變量,
我這里報錯 是因為:
這個路徑錯誤導(dǎo)致的。
如果是并發(fā)數(shù)太多too many open files 修改nginx.config 的并發(fā)數(shù)
解決方法是:
打開/etc/security/limits.conf文件,加上兩句
復(fù)制代碼代碼如下:
- soft nofile 65535
- hard nofile 65535
打開/etc/nginx/nginx.conf
在worker_processes的下面增加一行
復(fù)制代碼代碼如下:
- worker_rlimit_nofile 65535;
重新啟動nginx,重新載入設(shè)置
有可能是數(shù)據(jù)庫問題