windows下nginx+php-cgi多端口

windows下nginx+php-cgi

win10
phpstudy php7.2+nginx

我们知道在Linux下是由php-fpm来管理php-cgi的,就是提供fastcgi接口的,但是phpstudy没有提供对php-cgi
的管理方法。

启动phpstudy
打开CMD
netstat -ano
可以找到一个 127.0.0.1:9000 的服务,也就是说phpstudy只开启了一个fastcgi进程,这就导致,我们在本机
的一个项目里面使用fastcgi(php-cgi)的方式访问本机的另外一个项目的时候是一直处于阻塞状态的,并且其他
经过127.0.0.1:9000的请求都会被阻塞。

在Linux下,我们可以通过设置php-fpm来设置进程个数来提高并发能力,那么在windows+phpstudy模式下如何多开几个php-cgi呢?

实际上是没有很好的办法的。

以下是折中的办法。

php-cgi -h 查看参数

D:\phpStudy\PHPTutorial\php\php-7.2.1-nts\php-cgi.exe -b 127.0.0.1:9001 -c D:\phpStudy\PHPTutorial\php\php-7.2.1-nts\php.ini

批处理start.bat

start "fcgi服务" /MIN D:\phpStudy\PHPTutorial\php\php-7.2.1-nts\php-cgi.exe -b 127.0.0.1:9000 -c D:\phpStudy\PHPTutorial\php\php-7.2.1-nts\php.ini
start "fcgi服务" /MIN D:\phpStudy\PHPTutorial\php\php-7.2.1-nts\php-cgi.exe -b 127.0.0.1:9001 -c D:\phpStudy\PHPTutorial\php\php-7.2.1-nts\php.ini

查看
netstat -ano

并且设置某个项目的

location ~ \.php(.*)$  {
    fastcgi_pass   127.0.0.1:9001;
    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;
}

为什么要配置多端口,那是因为一个端口只能被一个进程监听,多个php-cgi监听同一个端口,实际上是不成功的;同样的,php-fpm也只有Master监听9000,其他的php-fpm都是worker,是没有监听的。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本文件体积过大分4个包,php-cgi+mysql+nginx.7z.001-.004。请下全。现把后面3个包整和一个包,http://www.ytgps.com/Images/nginx.rar 本安装文件修改了源码网的“CentOS 集成linux+php-cgi+nginx+mysql安装包“里面的部分文件,主要是修改了install.sh内的几个错误位置。目前我测试在centos 5.4下,安装一切正常! 使用这个安装之前请一定看一下本说明文件! 说明: 1、本安装包并非本人原创,仅仅是对原安装包进行了一些细微的修改,让大家能更方便的安装nginx+php-cgi+mysql平台,进行测试和学习所用。本着学习的精神,希望大家能更快掌握这个平台。 2、文件全部解压缩到/usr/local/src,而并非/usr/src。所以大家请注意这一点,以免在运行./install.sh的时候造成找不到文件的问题。如果你想解压缩到/usr/src里面,那就只有再修改一下./install.sh里面的几个对应的地方就可以了。这个其实无所谓。只要知道了就好了。 3、安装之前确定,本机没有运行mysql,确定没有类似apache等程序占用80端口,如果有,杀之! 4、原安装包的说明文档: centos 5.2里一键安装 集成linux+php-cgi+nginx+mysql安装包,只要执行一下里面的install.sh就可以完成安装!mysql root密码为空,安装路径在/usr/local/mysql里 web路径在/var/www/html,如果想更改只要修改/usr/local/nginx/conf/nginx.conf里root的路径就行了。 感谢下载。本人也是新手,希望大家鼓励!在此,感谢原作者的无私分享!虽然我并不知道您是谁!感谢GNU!感谢CSDN!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值