1. 程式人生 > >CentOS 7 Nginx 錯誤集合

CentOS 7 Nginx 錯誤集合

Nginx 錯誤集合

 

1、$ env: /etc/init.d/nginx: 沒有那個檔案或目錄

 

    這個問題剛開始困惑了我很久,明明檔案是存在的啊,指令碼也沒什麼錯啊,怎麼就是說檔案找不到,後面在網看到說是因為檔案格式為doc,Linux不能識別,所以,我的做法是:把檔案內容複製出來,然後把之前的/etc/init.d/nginx刪除,用 vi /etc/init.d/nginx再建一個,再把內容複製進去,我是這麼解決了。在網上又看到一個理簡便的方法:可以通過vim開啟該檔案,如果可以看到出現 ^M 的字元,就可以確定是DOS格式的了。那麼可以在vim中執行命令 :%s/\r\+$//e ,將其轉換成Unix格式即可。 第二種方法沒試過,不知道能不能行,我相信應該是可以的。

 

2、Starting nginx (via systemctl): Warning: Unit file of nginx.service changed on disk, 'systemctl daemon-reload' recommended

 

        這是一個警告,這個是在我修改/etc/init.d/nginx檔案之後出現的,這個問題,直接按它提示的操作:$ systemctl daemon-reload 就可以了。

 

3、Starting nginx (via systemctl): Job for nginx.service failed. See 'systemctl status nginx.service' and 'journalctl -xn' for details.

 

        出現這樣的提示,一般先執行 $ systemctl status nginx.service  看看下面的具體情況,比如:

[[email protected] init.d]# systemctl status nginx.service
nginx.service - LSB: start and stop nginx
   Loaded: loaded (/etc/rc.d/init.d/nginx) Active: failed (Result: resources) since 三 2015-06-24 20:21:31 CST; 5min ago Process: 18620 ExecStart=/etc/rc.d/init.d/nginx start (code=exited, status=0/SUCCESS) 6月 24 20:21:31 Leco.lan systemd[1]: Starting LSB: start and stop nginx... 6月 24 20:21:31 Leco.lan nginx[18620]: Starting nginx: nginx: [emerg] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory) 6月 24 20:21:31 Leco.lan nginx[18620]: [ 確定 ] 6月 24 20:21:31 Leco.lan systemd[1]: PID file /var/run/nginx/nginx.pid not readable (yet?) after start. 6月 24 20:21:31 Leco.lan systemd[1]: Failed to start LSB: start and stop nginx. 6月 24 20:21:31 Leco.lan systemd[1]: Unit nginx.service entered failed state.

其實看到這個systemctl這個東西出來了,就可以使用新RHEL 7的啟動服務方式了,給個傳送門供大家參考下這個方式:http://my.oschina.net/liucao/blog/470458

4、nginx: [emerg] mkdir() "/var/cache/nginx/client" failed (2: No such file or directory)

        這種都屬於常見的,$ sudo mkdir -p /var/cache/nginx/client 就可以了,類似的問題都是這樣做,但是像/var/run/nginx/nginx.pid這樣的程序檔案好像不能這樣做吧。

 

5、nginx: [alert] could not open error log file: open() "/var/log/nginx/error.log" failed (13: Permission denied) 2015/06/25 13:46:55 [emerg] 4392#0: open() "/var/log/nginx/access.log" failed (13: Permission denied)

 

        這個一看就是許可權問題,切換 $ sudo 或 $ su。大家主要還是要耐心的把錯誤日誌看完整,不要一出問題就去Google,以前我也有那樣的臭毛病,很簡單的問題,大家也不會去在網上發,結果找半天也沒有網上找到答案,結果回頭仔細看看日誌,又找到了毛病。