目录
手动启动php-cgi.exe
找到php 目录,运行以下命令
# php-cgi.exe -b 127.0.0.1:9001
缺点
需要手动运行,phpstudy nginx 重启时还需要再手动运行。
phpstudy 默认phprocess.exe
phpStudy2016在启动nginx时,会调用 tools 文件架内phprocess.exe + php文件夹,并没有源码,但可以参考后面的项目可猜测代码逻辑,类似以下代码
exec.Command("php/" + phpver + "/php-cgi.exe", "-b", "127.0.0.1:9000" ).Start()
修改php-fpm.ini 内fpm 值可以更改启动进程数,但无法配置端口。
替换 phprocess.exe
下载
phprocess.exe地址
替换
把下载的 phprocess-windows-amd64.exe 修改名字为 phprocess.exe,覆盖到phpstudy tools 目录中
修改php-fpm.ini
[php-fpm]
fpm=2
port=9000
参数说明
fpm 开启 php-cgi数量
port 开启起始端口
详情可以见源码:
func main() {
phpver := os.Args[1]
cfg, _ := ini.Load("tools/php-fpm.ini")
spawnNum, _ := cfg.Section("php-fpm").Key("fpm").Int()
port, _ := cfg.Section("php-fpm").Key("port").Int()
for i := 0; i < spawnNum; i++ {
th_port := port + i
exec.Command("php/" + phpver + "/php-cgi.exe", "-b", "127.0.0.1:" + strconv.Itoa(th_port)).Start()
}
}
nginx 设置
upstream php-fastcgi {
server 127.0.0.1:9000 weight=1;
server 127.0.0.1:9001 weight=1;
}
server {
location ~ \.php(.*)$ {
fastcgi_pass php-fastcgi ;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
效果
补充
2021年12月25日 不好用,经常会崩