Nginx
刪除 NGINX 日誌後如何重新啟動日誌記錄?
我刪除了我的 NGINX 日誌,因為它非常大,我認為 NGINX 會自動創建一個新日誌來代替它。它沒有,現在我沒有日誌。該文件以前位於
/opt/nginx/logs/error.log
. 我嘗試在同一位置創建具有相同權限的新文件,但似乎沒有幫助。我在 ubuntu 12.10 伺服器上執行 nginx/1.4.7。如何恢復我的日誌記錄?
我試過
sudo service nginx restart
了,它說nginx: unrecognized service
。我認為這可能是因為我正在使用 NGINX 和 Phusion Passenger 來為 Rails 應用程序提供服務,而 Passenger 已經改變了一些東西。例如,NGINX 存在於/opt/nginx
而不是init.d
.
乘客的一位作者在 stackoverflow 上正確回答了這個問題。這是他的答案的副本。
重新啟動 Nginx實際上會使日誌文件返回*。*只是您沒有使用正確的方法重新啟動 Nginx,因為您的 Nginx 安裝是從原始碼安裝的。
預設 Nginx 原始碼不提供初始化腳本,例如
/etc/init.d/nginx
和。service nginx restart
初始化腳本實際上是作業系統的 Nginx 包提供的擴展。如果您從原始碼安裝 Nginx,那麼您將無法再使用 init 腳本來控制 Nginx。相反,您將使用更通用的作業系統原語來控制 Nginx,例如 PID 文件和信號。在乘客文件中了解更多資訊。重新啟動 Nginx 是通過向它發送信號並通過 Nginx 命令再次啟動它來完成的。例如:
sudo kill $(cat /opt/nginx/logs/nginx.pid) sudo /opt/nginx/sbin/nginx
要了解有關重新啟動從原始碼安裝的 Nginx 的更多資訊,請閱讀乘客文件的這一部分。