Nginx(二)-服務模式運行nginx之WINSW


雖然使用命令行控制ngix很簡單,但是如果作為一個服務工作的話能更方便地啟動、停止或者設置依賴項。

這里使用開源項目Windows Service Wrapper 來實現。

github下載地址:https://github.com/kohsuke/winsw/releases

.netframework2.0 選擇 WinSW.NET2.exe 

.netframework4.0  選擇WinSW.NET4.exe

這里選擇 WinSW.NET4.exe

 第一步:

下載WinSW.NET4.exe,放至待包裝的exe文件夾中,這里就是nginx.exe所在的目錄,並修改名字為“nginxservice.exe”

在nginxservice.exe同目錄中新建一個同名的xml文件

修改xml文件內容,格式可參考下載列表里的xml范例

 

這里參考最簡單的sample-minimal.xml

修改為真實內容

安裝服務

d:\nginx\nginxservice.exe install  

 安裝完成后后在服務里查看到該服務 nginxservice,至此服務安裝完成

啟動該服務,然后在瀏覽器中輸入地址和原先以控制台指令執行結果運行一致 代表執行成功

 

 

卸載服務指令

nginxservice.exe uninstall 或者使用 sc delete 服務名稱

  

 其它:

exe目錄下存在運行日志可供查看運行內容

 常見問題:

1.刪除服務時出現“服務已被標記為刪除”

一般為卸載和刪除服務時服務正在運行或者windows服務管理器沒有關閉導致,刪除前養成關閉服務和服務管理器的習慣,然后重新安裝啟動即可。

2.服務啟動后自動關閉,無法正常運行

一般是配置文件配置錯誤,常見如端口沖突(比如IIS 和Nginx 使用了相同端口,則Nginx不能再使用該端口),這時只要消除端口沖突即可,具體錯誤可以查看錯誤日志。

 

更新:

經驗證該方法在server系統無法自動啟動和服務狀態顯示錯誤問題,推薦使用NSSM封裝nginx為windows服務使用,使用方法參照 使用nssm注冊 windows服務

 


免責聲明!

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



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