解决windows+nginx下 PHP-CGI 进程崩溃问题

本地开发系统使用的是windows系统下,配置的 nginx+php,在使用过程中总是出现崩溃现象,网上搜解决办法时,很多网友说是PHP-CGI 进程崩溃 造成的,当 php-cgi 处理php 达到500次,就自动关闭。也给出了解决办法。

解决的办法就是使用 xxfpm,管理FastCGI进程,xxfpm可以控制启动 FastCGI的进程数量。进程挂掉后会自动启动一个新的进程。git地址:https://github.com/78/xxfpm

启动脚本如下,配置了多个版本的PHP,PHP 和nginx 也要进行相应的设置,其中用到了RunHiddenConsole ,需要单独进行下载:https://github.com/wenshui2008/RunHiddenConsole

-n 3 就是启动的进程数

-p 20056 是php-cgi 的端口,nginx 配置PHP时要用到 fastcgi_pass 127.0.0.1:20056;

@echo off

echo Stopping nginx...  
taskkill /F /IM nginx.exe > nul

echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
taskkill /F /IM xxfpm.exe > nul

set PHP_FCGI_MAX_REQUESTS = 1000

echo Starting PHP FastCGI...
RunHiddenConsole xxfpm.exe "D:/NMP/php5.6/php-cgi.exe -c D:/NMP/php5.6/php.ini" -n 3 -i 127.0.0.1 -p 20056
RunHiddenConsole xxfpm.exe "D:/NMP/php7.2/php-cgi.exe -c D:/NMP/php7.2/php.ini" -n 3 -i 127.0.0.1 -p 20072
RunHiddenConsole xxfpm.exe "D:/NMP/php7.4/php-cgi.exe -c D:/NMP/php7.4/php.ini" -n 3 -i 127.0.0.1 -p 20074
RunHiddenConsole xxfpm.exe "D:/NMP/php8.0/php-cgi.exe -c D:/NMP/php8.0/php.ini" -n 3 -i 127.0.0.1 -p 20080
RunHiddenConsole xxfpm.exe "D:/NMP/php8.1/php-cgi.exe -c D:/NMP/php8.1/php.ini" -n 3 -i 127.0.0.1 -p 20081

echo Starting nginx...
RunHiddenConsole D:/NMP/nginx-1.20.2/nginx.exe -p D:/NMP/nginx-1.20.2/

exit

注意:RunHiddenConsole 和 xxfpm.exe 的目录设置,如果 xxfpm启动出现错误,需要将下载 xxfpm的压缩包内 pthreadgc2.dll 复制到 C:/Windows/SysWOW64 目录(如果系统是32位的,将dll文件复制到C:WindowsSystem32下)。

运行后会出现15个进程(3*5个PHP版本)

解决windows+nginx下 PHP-CGI 进程崩溃问题

上面说 当 php-cgi 处理 php 达到500次,就自动关闭,特意做了一下测试,前500次返回200,第501次时返回了 502。使用 xxfpm方式启动后就不会出现 502 的情况了

解决windows+nginx下 PHP-CGI 进程崩溃问题

原创文章,作者:admin,如若转载,请注明出处:https://ntib.cn/183.html

(0)
adminadmin
上一篇 2023年11月18日 下午10:54
下一篇 2023年11月18日 下午10:56

相关推荐

  • 讯时MX120 语音网关配置

    企业集团网站建设迅时语音网关_MX120VoIP接入网关最大可配置96个模拟电话端口(FXS)和模拟外线端口(FXO),适用于运营商和大中型企业IP语音网部署、呼叫中心解决方案以及模拟“落地”等应…

    2021年11月18日
  • ThinkPHP执行数据迁移时出错问题

    企业集团网站建设执行数据迁移相关命令时报 Fatal error: Class ‘think\facade\Env’ not found 错误,是版本问题,可在 compo…

    记事本 2023年11月19日
  • windows系统下PhpStorm试用版下载地址

    企业集团网站建设PhpStorm 是 JetBrains 公司开发的一款商业的PHP集成开发工具,旨在提高用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。 win系统,…

    2024年3月16日
  • freeswitch 批量生成用户xml文件

    企业集团网站建设时候需要在 FreeSWITCH 中添加大量用户,在 Linux 上,我用以下脚本生成: 上面的脚本会生成 2001 到 2032 的用户配置文件。

    记事本 2022年11月18日
  • 钉钉事件订阅HTTP回调功能设置

    企业集团网站建设钉钉的功能越来越多,用起来也更方便了,原来钉钉中不支持主动推送,一些事件没办法实时得的反馈,现在钉钉事件订阅,可以在事件发生时主动的向你的服务器发送http请求,处理一些事件非常的…

    2023年11月18日
  • git放弃本地修改代码全部使用远程

    企业集团网站建设git强制覆盖:    git fetch –all    git reset –hard origin/master    git pull  git强制覆盖本地命令(单条执行)…

    记事本 2023年11月18日
  • 中国移动中继线_30B+D接入呼叫中心系统

    企业集团网站建设96***短号码接入呼叫系统FreeSWITCH,申请短号码,选择的是移动线路进行落地。使用鼎信通达MTG2000设备。左侧功能列表如下 1、登录MTG2000,设备有两个网口,一…

    2018年11月18日
  • 2024年还能不能通过买卖域名建站赚钱

    企业集团网站建设现在手机端用户越来越多,域名和网站的使用量逐渐的降低,好像域名都没那么重要了,那么现在还能不能通过买卖域名建站赚钱呢,好像也可以,但应该不会像最初那么容易了。 一方面通过电脑查信息…

    2023年11月22日
  • centos7调整根目录挂载分区容量大小

    企业集团网站建设由于系统初始时根目录一般空间为50左右 有时会被占满,而/home目录却有大量空间 这里需要调整: 1.终止占用 /home 进程 fuser -m -v -i -k /home​…

    记事本 2018年11月18日
  • 网站权重是什么?这个权重有什么用?

    企业集团网站建设百度权重是爱站、站长工具等网站推出的针对网站关键词排名预计给网站带来流量,划分等级0-9的第三方网站欢迎度评估数据。百度官方明确表示不承认百度权重。 很多人喜欢把网站权重和收录速度…

    2023年11月18日

发表回复

登录后才能评论
WeChat