1.創建windows服務用到一個小工具WinSW:https://github.com/kohsuke/winsw/releases(下載 .exe 文件即可,根據系統選擇,Win 10 選擇 .NET4 版本,以下選擇 .NET2 版本)
2.把php-cgi.exe注冊成windows服務除了需要用到WinSW以外,還需要用到xxfpm,用來開啟 PHP-CGI 多進程,下載地址:https://github.com/78/xxfpm
3.將下載到的WinSW.NET4.exe更名為nginxservice.exe,放到nginx.exe所在的目錄下,在該目錄下新增文件 nginxservice.xml,修改nginxservice.xml配置如下:
<service> <id>nginx</id> <name>nginx</name> <description>nginx</description> <logpath>E:\nginx-1.12.2\</logpath> <logmode>roll</logmode> <depend></depend> <executable>E:\nginx-1.12.2\nginx.exe</executable> <stopexecutable>E:\nginx-1.12.2\nginx.exe -s quit</stopexecutable> </service>
4.在E:\nginx-1.12.2\下執行 nginxservice.exe install,即可生成windows服務,卸載命令:nginxservice.exe uninstall
5.php的服務注冊需要先下載xxfpm,將下載的xxfpm.exe 和 pthreadGC2.dll 扔進php-cgi.exe所在的目錄
6.將下載到的WinSW.NET4.exe更名為phpservice.exe,放到php-cgi.exe所在的目錄下,在該目錄下新增文件 phpservice.xml,修改phpservice.xml配置如下
<service> <id>phpservice</id> <name>phpservice</name> <description>phpservice</description> <executable>xxfpm.exe</executable> <startargument>"E:/ServerCore/php/php-cgi.exe -c E:/ServerCore/php/php.ini"</startargument> <startargument>-n</startargument> <startargument>1</startargument> <startargument>-i</startargument> <startargument>127.0.0.1</startargument> <startargument>-p</startargument> <startargument>9000</startargument> <stopexecutable>taskkill</stopexecutable> <stopargument>/F</stopargument> <stopargument>/IM</stopargument> <stopargument>xxfpm.exe</stopargument> <logpath>logs</logpath> </service>
5.在 E:/ServerCore/php\下執行 phpservice.exe install,即可生成windows服務