参考把 Nginx 创建为 Windows 的一个服务 – Defonds 的专栏 – 博客频道 – CSDN.NET,我做了以下改变:
首先编写setupPhp.bat,作为PHP服务启动关闭的程序,内容如下:
@echo off
if "%1" == "-start" goto start
if "%1" == "-stop" goto stop
:start
set PHP_FCGI_MAX_REQUESTS=1000
D:/WebSrv/php/php-cgi.exe -b 127.0.0.1:9000 -c D:/WebSrv/php/php.ini
goto end
:stop
taskkill /F /IM php-cgi.exe > nul
goto end
:end
接下来安装Nginx服务,需要编写XML文件。除了更改路径和上文并无不同。
installNginx.xml
<service>
<id>Nginx</id>
<name>Nginx</name>
<description>Nginx是一个高性能的HTTP和反向代理服务器,也是一个邮件服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的。</description>
<executable>D:\WebSrv\nginx\nginx.exe</executable>
<logpath>D:\WebSrv\Logs\</logpath>
<logmode>roll</logmode>
<depend></depend>
<startargument>-p D:\WebSrv\nginx</startargument>
<stopargument>-p D:\WebSrv\nginx -s stop</stopargument>
</service>
接下来按照PHP服务,需要编写XML文件。
installPHP.xml
<service>
<id>PHP-FPM</id>
<name>PHP-FPM</name>
<description>PHP-FPM</description>
<executable>D:\WebSrv\php\setupPhp.bat</executable>
<logpath>D:\WebSrv\Logs\</logpath>
<logmode>roll</logmode>
<depend>Nginx</depend>
<startargument>-start</startargument>
<stopargument>-stop</stopargument>
</service>
重要的点在depend元素。
<depend>Nginx</depend>
这样启动PHP服务后,Nginx也被带着一起启动了。但试过了,如果PHP服务