把php-cgi注册成Windows服务

把php-cgi注册成Windows服务

php-cgi在linux中有fpm管理,Apache不是采用cgi这种模式,于是乎就出现了,在windows下,采用nginx时,开启的php-cgi监听非常不稳定,经常奔溃关闭。为解决这个问题,需要使用的xxfpm工具。

下载xxfpm

xxfpm工具下载地址:https://github.com/78/xxfpm

注意bin文件夹中的xxfpm.exe,pthreadGC2.dll均需要被使用到。

下载PHP

PHP下载地址:https://www.php.net/downloads.php

根据自己的需要下载对应的版本,注意:

1、是否线程安全

2、使用什么版本的VC库编译,同时需要再微软官方下载VC库安装程序安装

下载winsw

winsw是一个windows service wrapper工具,可以将nginx.exe包装为Windows服务


WinSW下载地址:https://github.com/kohsuke/winsw/releases(下载 .exe 文件即可,根据系统选择,Win 10 选择 .NET4 版本,以下选择 .NET2 版本)

php-cgi服务安装

1、解压php到指定目录下,实例中是解压到C:/server/php目录

2、将xxfpm.exe,pthreadGC2.dll复制到解压后的php根目录下

3、将下载到的WinSW.NET4.exe更名为phpservice.exe,放到php.exe所在的目录下,在该目录下新增文件 phpservice.xml,修改phpservice.exe配置如下:

<service>
<id>phpservice</id>
<name>phpservice</name>
<description>phpservice</description>
<executable>xxfpm.exe</executable>
<startargument>”C:/server/php/php-cgi.exe -c C:/Server/php/php.ini”</startargument>
<startargument>-n</startargument>
<startargument>3</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>

在C:/server/php下执行 phpservice.exe install,即可生成windows服务,卸载命令:phpservice.exe uninstall

以上步骤完成php-cgi的服务安装

迈弦驱动

评论已关闭。