Nginx系列(6)- nginx: [error] CreateFile() "D:\nginx-1.20.1/logs/nginx.pid" failed (2: The system cannot find the file specified)


背景

修改nginx配置文件nginx.conf后,想要重啟nginx使配置生效。cmd進入nginx安裝目錄,輸入命令: nginx -s reload 

報錯:nginx: [error] CreateFile() "D:\nginx-1.20.1/logs/nginx.pid" failed (2: The system cannot find the file specified)

 

原因分析

  • 問題的直接原因就是在nginx的安裝目錄下的logs目錄里面沒有nginx.pid這個文件,一般情況下nginx啟動時會自動創建nginx.pid文件的
  • nginx啟動或者重啟需要殺掉原來的nginx進程,需要根據nginx.pid找到原來的進程,其中pid其實就是原來的進程ID了
  • 出現這種情況的原因可能是nginx未啟動或者nginx.pid被手動刪除掉,有時候在windows系統通過雙擊方式啟動nginx會有無法在logs目錄下自動生成nginx.pid文件的情況
  • 在沒有啟動nginx的情況下(以及你不清楚有沒有啟動),不要使用nginx -s reload命令來作為啟動命令,可以避免這個報錯發生

 

解決方法

1.任務管理器里面找到原來的nginx進程(如果有的話)並關掉,然后使用cmd命令的方式啟動nginx

2.cmd 進入 nginx安裝目錄

3.輸入命令 start nginx 或者 nginx.exe 啟動nginx

4.去nginx目錄下logs目錄下看看有沒有nginx.pid的文件;如果沒有重復123操作

5.如果nginx.pid已經生成,再去修改配置文件后就可以正常重啟了

6.nginx -s reload

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM