1.建立windows服务用到一个小工具WinSW:https://github.com/kohsuke/winsw/releases(下载 .exe 文件便可,根据系统选择,Win 10 选择 .NET4 版本,如下选择 .NET2 版本)php
2.把php-cgi.exe注册成windows服务除了须要用到WinSW之外,还须要用到xxfpm,用来开启 PHP-CGI 多进程,下载地址:https://github.com/78/xxfpmnginx
3.将下载到的WinSW.NET4.exe改名为nginxservice.exe,放到nginx.exe所在的目录下,在该目录下新增文件 nginxservice.xml,修改nginxservice.xml配置以下:git
<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 uninstallgithub
5.php的服务注册须要先下载xxfpm,将下载的xxfpm.exe 和 pthreadGC2.dll 扔进php-cgi.exe所在的目录windows
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服务ui