精华内容
下载资源
问答
  • cig和fast-cgi的关系,fast-cgiphp-cgiphp-fpm、spawn-fcgi的区别和联系 首先贴上原版的英文解释: CGI: CGI, Common Gateway Interface, is a tool for ...

    cig和fast-cgi的关系,fast-cgi和php-cgi、php-fpm、spawn-fcgi的区别和联系


    1. 首先贴上原版的英文解释:
    CGI:
       CGI, Common Gateway Interface, is a tool for HTTP server to contact with programs on other servers, which can be used into any languages with standard input, standard output and environmental variables, such as PHP, Perl, or Tcl.
       意思就是:CGI是公共网关接口,是http服务器和其他服务器上的程序交互的工具,只要程序语言提供符合CGI标准的输入、输出和环境变量即可,如像php、perl等都可以和http服务器交互。
    FastCGI:
        FastCGI is a kind of CGI which is long-live, which will always be running. With FastCGI, it'll take less time t fork(which is a problem of fork-and-execute mode in CGI). In additional, FastCGI also supports for distributed computing.
    It is also not language related, which is an opened extension of CGI, which is used to keep CGI running in the memory. It's well-known that loading of CGI has been the main reason of low performance.
    the main process of running FastCGI:
    Loading the Process Manager of FastCGI when a Web server has booted(IIS ISAPI or Apache Module)
        The Process Manager of FastCGI will initiate itself to create several CGI processes, which are used to wait for connection of Web servers.
        When requests from clients have reached the Web server, the Process Manager of FastCGI will select a CGI set up before to connect, whose environmental variables and standard input will be sent to the sub process php-cgi of FastCGI.
        This sub process will return standard output and error info to the Web server with the same connection. Requests will be finished when it closes the connection.
        Therefore, FastCGI only set once for parsing php.ini, loading extensions and initiating all the data structures.
    
        Because of multi-processes, FastCGI will cost more memory than CGI, whose each process(PHP-CGI) will cost about 7Mb to 25Mb memory.
        Data from the article: Nginx 0.8x + PHP 5.2.13(FastCGI) is 10 times better than Apache(Edition 6)when 30k connection happens in parallel, 10 Nginx processes will only cost 150Mb Mem(15Mb 10), and 64 PHP-CGI will only cost about 1280Mb(20Mb 64).
    
    意思就是:
        Fast-cgi是一种常驻内存的cgi,用Fast-cgi接口可以花更少的时间起一个进程,类似于设计模式中的原型模式,实例化对象消耗更少的资源,而且Fast-cgi支持分布式计算。
    
        Fast-cgi的进程管理器会初始化自己和一些cgi进程,就是起一个master和几个worker进程。当客户端有请求发送到web 服务器上时,Fast-cgi的进程管理器会提前选择一个cgi进程,并把环境变量和标准输入发送给Fast-cgi的子进程php-cgi。子进程会返回标准输出和错误信息给web 服务器通过和web服务器之间的连接,当请求结束后子进程会断开和web服务器之间的连接。
    
        Fast-cgi 仅仅初始化一次对php.ini的解析,仅加载一次扩展和初始化一次所有的数据结构。
    
        由于是多进程的(类似于一个master和几个worker),Fast-cgi会比cgi消耗更多的内存,每一个php-cgi进程消耗7M~25M的内存。 
    PHP-CGI:
        PHP-CGI is one kind of the Process Manager of FastCGI, which is within php itself.
        The command to boot is as follow:
            php-cgi -b 127.0.0.1:9000
        After changing php.ini, you should reboot PHP-CGI to make the new php.ini work.When a PHP-CGI process is killed, all the PHP code will cannot run.(PHP-FPM and Spawn-FCGI do not have the same problem)
    
    意思就是:
        php-cgi是Fast-cgi进程管理器的一种,是php自带的,启动方式如下:
            php-cgi -b 127.0.0.1:9000
        当更改php.ini配置文件后必须重启php-cgi。结束php-cgi的进程时,所有的php代码都不能执行。意思就是不能平滑重启,php-fpm和spawn-fcgi可以平滑重启。
    php-fpm:
        PHP-FPM is another kind of the Process Manager of FastCGI, which can be downloaded here.
        It's actually a patch for PHP, which is used to integrate the Process Manager of FastCGI into PHP, which should be make into PHP before version 5.3.2.
        PHP-FPM can be used to control sub processes of PHP-CGI:
        /usr/local/php/sbin/php-fpm [options]
        # options
        # --start: start a fastcgi process of php
        # --stop: force to kill a fastcgi process of php
        # --quit: smooth to kill a fastcgi process of php
        # --restart: restart a fastcgi process of php
        # --reload: smooth to reload php.ini
        # --logrotate: enable log files again
    
    意思就是:
        php-fpm是另外一种Fast-cgi的进程管理器,php5.3.2之前是作为php分支中的Fast-cgi进程管理的,需要通过编译的方式使用,php5.3.2之后已经合并到主干中可以直接使用。
    Spawn-FCGI:
        Spawn-FCGI is a general kind of the Process Manager of FastCGI, which is one part of lighttpd.
    意思就是; spawn-fcgi 是一种通用的fast-cgi的进程管理器,是lighttpd服务器的一部分,不过现在一个是一个独立的项目。

    自己理解

    1. cgi是一种接口标准,fast-cgi是一种更外先进的cgi标准。

    2. php-cgi是php实现的fast-cgi接口标准的进程管理器。但是它不能平滑重启。

    3. php-fpm只是php之前版本中的一个补丁,也是实现了fast-cgi接口标准。现在php主干版本中的一部分,可以平滑启动。

    4. spawn-fcgi 是一个通用的fast-cgi接口,是lighttpd的一部分。

    5. php-fpm和spawn-fcgi 都是php-cgj的进程管理器,不过php-fpm占cup多,内存分布均匀,spawn-fcgi 不占cpu,内存分布不均匀, 总体而言 php-fpm 更为优秀。

    6. cgi接口每次调用就要初始化一次资源,fast-cgi 只初始化一次资源


    他人的理解

    1. FASTCGI:WEB服务器与处理程序之间通信的一种协议,是CGI的改进方案。

    2. CGI程序反复加载是CGI性能低下的主要原因,如果CGI程序保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性、Fail-Over特性等。

    3. FASTCGI是常驻型的CGI,它可以一直运行,在请求到达时,不会花费时间去fork一个进程来处理。

    4. FastCGI是语言无关的、可伸缩架构的CGI开放扩展,将CGI解释器进程保持在内存中,以此获得较高的性能。

    5. 一般情况下,FastCGI的整个工作流程是这样的:

      1、Web Server启动时载入FastCGI进程管理器(IIS ISAPI或Apache Module)
      
      2、FastCGI进程管理器自身初始化,启动多个CGI解释器进程(可见多个php-cgi)并等待WebServer的连接。
      
      3、当客户端请求到达Web Server时,FastCGI进程管理器选择并连接到一个CGI解释器。 Web server将CGI环境变量和标准输入发送到FastCGI子进程php-cgi。
      
      4、FastCGI子进程完成处理后将标准输出和错误信息从同一连接返回Web Server。当FastCGI子进程关闭连接时,请求便告处理完成。FastCGI子进程接着等待并处理来自FastCGI进程管理器(运行在Web Server中)的下一个连接。在CGI模式中,php-cgi在此便退出了。
      

    基本上cgi、fast-cgi、php-cgi、php-fpm、spawn-fcgi的概念、关系、区别就这些吧。

    欢迎大家指正、参考、分享。


    2017/02/21 15:03

    展开全文
  • 前言通常我们在PHP开发中都以LAMP或者LNMP的服务器环境部署web服务,在这些web开发过程中时常会遇到CGI、FASTCGI、PHP-CGIPHP-FPM等的概念,为了避免对这些名词理解不清或者混淆,本文就来梳理和记录一下这些专有...

    前言

    通常我们在PHP开发中都以LAMP或者LNMP的服务器环境部署web服务,在这些web开发过程中时常会遇到CGI、FASTCGI、PHP-CGI、PHP-FPM等的概念,为了避免对这些名词理解不清或者混淆,本文就来梳理和记录一下这些专有名词的概念和区别。

    一、概念

    1、CGI:指的是Web服务器与web应用程序之间的一种数据交换协议。
    2、FastCGI:类似于CGI,Fast-CGI也是一种通信协议,但是它在CGI的基础上, 在效率上做了一些优化
    3、PHP-CGI:PHP-CGI是PHP对Web服务器提供的CGI协议的接口程序,即实现了CGI协议的php解释器程序。它能解析PHP,也能通过CGI与web服务器通信。
    4、PHP-FPM:是PHP对Web服务器提供的FastCGI协议的接口程序,即在实现解释PHP脚本和与web服务器通讯的基础上,额外还提供了相对 进程调度、任务管理功能。

    二、PHP的响应请求的几种工作方式

    1、CLI方式
    PHP的CLI方式即是我们平时在系统中直接以php命令运行一些脚本的方式,也是我们常说的 命令行模式
    这种SAPI模块主要用作PHP的开发外部命令应用,可以不经过服务器,直接运行php脚本,也不需要通过CGI协议把运行结果传递给服务器做出响应,只需直接在服务器终端返回运行结果响应即可;
    2、PHP-CGI方式
    PHP-CGI是一个单一进程控制器和php脚本解释器,即是一种由 请求→web服务器→PHP-CGI→web服务器→响应这样的工作方式,它实现了CGI协议,web服务器把请求的内容通过CGI协议(大多以socket形式)传递给PHP-CGI,PHP-CGI能解析php脚本并返回请求,同样以CGI协议返回给web服务器,这样便能处理完整的web请求。

    3、PHP-CLI与PHP-CGI的区别:
    (1) PHP-CLI输出没有任何头信息
    (2)CLI会强制覆盖php.ini中的某些设置,因为这些设置在外壳环境下是没有意义的;

    4、PHP-FPM方式
    我们知道,CGI规定了服务器与解释器之间要传哪些数据、以什么样的格式传递给后方处理这个请求的协议,php脚本解释器在接受到请求后,解析php.ini文件,初始化执行环境,这些在PHP-CGI的工作方式中已经实现了。
    那么PHP-FPM方式,其实就是一个实现了FastCGI协议,来代替CGI协议的PHP脚本解释和进程管理程序。
    Fastcgi能提高性能,具体体现在普通的CGI需要“ 让php脚本解释器解析php.ini文件,初始化执行环境”;
    而Fastcgi采用的方式是预先启一个master进程,解析配置文件,初始化执行环境,然后再启动多个worker子进程。当请求过来时,master会传递给一个worker,然后立即可以接受下一个请求。这样就避免了重复的劳动,效率自然是高。而且当worker不够用时, master可以根据配置预先启动几个worker等着;当然空闲worker太多时,也会停掉一些,这样就提高了性能,也节约了资源。这就是fastcgi的对进程的管理。
    这样,PHP-FPM就是实现了这一协议的程序,而且已经被PHP官方纳入现在的版本自带当中。

    5、Module方式
    以Apache为例,在PHP Module方式中,会把php作为apache服务器的一个子模块来运行,即中间不需要经过复杂的协议进行通信。当通过web访问php文件时,apache就会调用php5_module来解析php代码。
    所以工作方式就是: apache->httpd->php5_module->sapi->php
    这种模式将php模块安装到apache中,所以每一次apache结束请求,都会产生一条进程,这个进程就完整的包括php的各种运算计算等操作;


                                    


    在上图中,我们很清晰的可以看到,apache每接收一个请求,都会产生一个进程来连接php通过sapi来完成请求,可想而知,如果一旦用户过多,并发数过多,服务器就会承受不住了。而且, 把mod_php编进apache时,出问题时很难定位是php的问题还是apache的问题


    三、Nginx+PHP-FPM的工作模型图


    四、总结
    1、CGI是协议,规定web服务器如何与脚本解释器通信;
    2、PHP-CGI实现了CGI协议,能响应web服务器请求,能初始化、fork进程,解析php脚本;
    3、FastCGI是一个优化了的协议,除了规定web服务器与脚本解释器通信之外,能提供进程调度,动态管理的功能,效率提高;

    4、PHP-FPM是实现了FastCGI协议的程序。


    展开全文
  • 一文读懂cgi、fastcgi、php-cgiphp-fpm的区别CGI诞生之前CGI的诞生CGI程序如何工作Web服务器的内置模块FastCGIphp-fpmphp-cgiphp-cgiphp-fpm的区别 CGI诞生之前 在CGI诞生之前Web服务器负责静态文件的存储、查找...
  • cgi: 早期的web服务器一般都只能处理静态资源,满足不了处理动态资源的需求,需要借助"java"、"php"等动态语言,这时候要与这些语言的解释..."php-cgi"是基于"cgi"协议,实现PHP脚本与web服务器通讯的应用程序。 ...
    • cgi:

    早期的web服务器一般都只能处理静态资源,满足不了处理动态资源的需求,需要借助"java"、"php"等动态语言,这时候要与这些语言的解释器建立联系。"cgi"是应用程序(语言解释器)与Web服务器之间的接口标准。它("cgi")就是一个协议,规范了应用程序与web服务器(Apache、nginx)的通讯。


    1:"cgi"是协议。
    2:web服务器与应用程序的通讯标准。

     

    • php-cgi:

    "php-cgi"是基于"cgi"协议,实现PHP脚本与web服务器通讯的应用程序

    1:是一个可以执行php脚本应用程序(解释器)。
    2:可以与服务器进行通讯。

     

    注:

    1.php脚本并不是一定要通过"php-cgi"才能执行,我们在命令行执行php脚本时,此处采用的是php内核提供的"cli接口"对php进行解析。

    2."php-cgi"是基于"fast-cgi"协议实现的应用程序,虽然作为php官方自带的"cgi"管理器,但是却并不好用,主要体现在:

    2.1:变更php.ini配置后,需重启"php-cgi"程序才能让新的php-ini生效,不可以平滑重启。
    2.2:直接杀死"php-cgi"进程,php就不能运行了。(它是单进程的,一个进程处理一个请求,处理结束后进程就销毁)

     

    • fast-cgi:

    "cgi"规范了服务器与解释器之间的通讯,但性能上存在着缺陷。
    每当有请求发送给服务器时,php解析器会解析"php.ini"文件,加载相关扩展、初始化执行环境。
    标准的"cgi程序"对每个请求都会执行这些步骤,所以处理的时间会比较长。
    "fast-cgi"协议实现的应用程序,会先创建一个"主进程",解析配置文件,初始化执行环境;然后再创建多个"cgi解释器进程"
    当请求过来时,"主进程"会传递给一个"cgi解释器进程",让其对本次请求进行解析,自己(主进程)立即可以接受下一个请求。
    而且当"cgi解释器进程"不够用时,"主进程"可以根据配置预先启动几个"cgi解释器进程"挂起;当空闲"cgi解释器进程"太多时,也会停掉一些。减少每次对环境的初始化、动态管理各个"执行进程",从而提高性能。

    1."fast-cgi"是一个协议。
    2.相较于"cgi"协议实现通讯,效率更高(有进程负责初始化环境、接收请求;有进程只管解析脚本)。

     

    • php-fpm:

    "php-fpm" 是对 "fastcgi"协议的具体实现,相较于"php-cgi",他负责管理一个进程池,来处理来自Web服务器的请求。
    因为"php-cgi"只是个"cgi"程序,他自己本身只能解析请求,返回结果,不会进程管理。所以就出现了一些能够调度 "php-cgi"进程的程序(php-fpm、spawn-fcgi...)。并且"php-fpm"通过生成新的子进程可以实现"php.ini"修改后的平滑重启。

    1."php-fpm"是对于"FastCGI"协议的实现,是一个应用程序。
    2.相较于"php-cgi",更加高效(平滑重启、不需要每次都初始化环境...)

     

     

    展开全文
  • 什么是CGI、FastCGI、PHP-CGIPHP-FPM、Spawn-FCGI?在php运行环境配置中用得到,究竟哪种更适合网站。
  • 什么是CGI、FastCGI、PHP-CGIPHP-FPM、Spawn-FCGI.pdf
  • window+nginx+php-cgi变通多开线程方法

    见bbs

    http://bbs.csdn.net/topics/390803643/close


    正常的配置情况下,window的php-cgi是不会出现多线程/子进程的,如下配置


    fastcgi_pass   127.0.0.1:9000;


    这时也就意味着当二个php文件同时请求解析时,就会出现阻塞处理,处理时间就会是a.php+b.php,而不是并行,是串行时间了.


    如a.php

    sleep(100);echo 1;

    b.php

    echo 2;

    先运行a.php,100秒后输出1.在运行a.php的同时,运行b.php,2却出现在100秒以后.假设...却不是一运行就立刻出现,因为上面的配置受影响导致解析是串行时间了.





    在google.翻了几个小时.

    找到

    The problem is that the PHP_FCGI_CHILDREN environment variable is ignored under windows, therefore php-cgi does not spawn children, and when PHP_FCGI_MAX_REQUESTS is reached the process terminates.


    Check on PHP's source, file cgi_main.c, around line 1982:


    #ifndef PHP_WIN32
      /* Pre-fork, if required */
      if (getenv("PHP_FCGI_CHILDREN")) {
        char * children_str = getenv("PHP_FCGI_CHILDREN");
    ...


    So, php with fast-cgi will **never** work on Windows.


    The question is, why is forking disabled under windows?




    -------------https://bugs.php.net/bug.php?id=49859-----------


    得知window不支持?????


    看到网上有很多人不懂怎么处理.而我的是测试服务器,觉得就算了.灵机一动.就手工的开起几个php-cgi等着吧.

    于是变通方案时.


    手工开起n个php-cgi等着




    ::window不支持 nginx的多线程,只能手工生成多个php-cgi
    start "fcgi服务" /MIN  /D "%batDir%php"  php-cgi.exe -b 127.0.0.1:9000 -c "%batDir%php/php.ini"
    start "fcgi服务" /MIN  /D "%batDir%php"  php-cgi.exe -b 127.0.0.1:9001 -c "%batDir%php/php.ini"
    start "fcgi服务" /MIN  /D "%batDir%php"  php-cgi.exe -b 127.0.0.1:9002 -c "%batDir%php/php.ini"
    start "fcgi服务" /MIN  /D "%batDir%php"  php-cgi.exe -b 127.0.0.1:9003 -c "%batDir%php/php.ini"

    start "nginx服务" /MIN  /D "%batDir%nginx" nginx.exe



    然后nginx的

    http {
    #window 不能派生子进程,只能人工配 PHP_FCGI_CHILDREN 在window不起作用的
    upstream fastcgi_backend {
    server 127.0.0.1:9000;
    server 127.0.0.1:9001;
    server 127.0.0.1:9002;
    server 127.0.0.1:9003;
    }


    弄一个备用服务器



    域名配置时,使用转发到备用服务器


    server {
    listen       80;
    server_name  q.qq;
    access_log ./../log/q.qq.access.txt;
    root d:/web/www;

    location ~ \.php$ {
    fastcgi_pass   fastcgi_backend;
    }
    }


    ok.同时打开4个php是可以独立解析了,并行,但是5个呢?第5个还是要等等吧..........

    展开全文
  • php_cgi_dir => 填写 php-cgi.exe 所在目录 php_cgi_start => 填写 php-cgi 启动参数及端口 php_cgi_num => 填写同时运行 php-cgi 的个数 其他使用默认配置即可 工具简陋,原本供自己使用,现方便有相同需求的人。 ...
  • windows下的php-cgi管理工具,自动维护一定数量的php-cgi进程。防止php-cgi生命周期结束自动退出,导致无法解析php文件。
  • 适用于AWS Lambda Artisan主机PHP-CGI可执行文件 构建一个PHP二进制文件以在AWS Lambda中使用 要求 码头工人 跑步 sh ./build.sh 7.2.0 您可以传递所需的任何版本PHP。 如果要优化编译以使用更多作业,请查看...
  • 假设您在nodejs中收到一个请求,并且有一个请求对象(称为req)和一个响应对象(称为res),这就是您将如何使用此模块的方式: reqdata = require("url").parse(req.url,true);... phpCGI.env['DOCUMENT_ROOT
  • 本文给大家介绍的是PHP-CGI远程代码执行漏洞(CVE-2012-1823)分析和防范,这是最近爆出的一个php的比较严重的漏洞,这里分享给大家。
  • 主要介绍了php-cgi进程cpu负载过高:禁用wordpress定时任务wp-cron.php,需要的朋友可以参考下
  • php-cgi服务的启动方式

    万次阅读 2016-03-29 23:33:26
    环境:unbuntu 14.04php-cgi启动有4种方式1、php-cgi -b 3344 直接启动的方式2、用spawn-cgi 启动3、php-fpm启动管理cgi4、网上找linux下php-cgi启动脚本spawn-cgi 启动方式:sudo spawn-fcgi -a 127.0.0.1 -p 3344 ...
  • 有时候,运行 Nginx、PHP-CGI(php-fpm) Web服务的 Linux 服务器,突然系统负载上升,使用 top 命令查看,很多 php-cgi 进程 CPU 使用率接近100%。
  • ubuntu安装php-cgi

    千次阅读 2015-11-23 00:43:26
    最近调研百度efe 的saber框架,需要安装php-cgi依赖, Ubuntu下安装的方法非常...如果是mac的话,参见http://stackoverflow.com/questions/27232483/how-to-install-php-cgi-as-a-plugin-in-mac-os-os-x-10-10 这篇文
  • php-cgi为何占用CPU100%.pdf
  • 解决windows下的Nginx和php搭配 php-cgi.exe自动关闭退出问题。用压缩包内bat文件启动即可,路径要稍微修改一下。
  • 聊聊 CGI FastCGI,php-cgi

    2018-02-28 17:52:19
     答:php-cgiphp的解释器,php-cgi是一个 CGI程序(为什么说是一个CGI程序呢,CGI 定义了Web服务器与外部应用程序之间的通信接口标准,php-cgi是基于这个CGI协议标准实现的,同样,C/C++,python,VB都可以实现CGI...
  • 关于cgi、FastCGI、php-fpm、php-cgi

    千次阅读 2016-07-13 05:46:00
    大家都知道,PHP的解释器是php-cgiphp-cgi只是个CGI程序,他自己本身只能解析请求,返回结果,不会进程管理(皇上,臣妾真的做不到啊!)所以就出现了一些能够调度php-cgi进程的程序,比如说由lighthttpd分离出来...
  • php配置 php-cgi.sock使用

    千次阅读 2019-03-28 20:50:22
    php配置 php-cgi.sock使用 PHP配置文件: [global] pid = /run/php-fpm/php-fpm.pid error_log = /var/log/php-fpm/php-fpm.log log_level = notice [www] listen = /dev/shm/php-cgi.sock listen.backlog = -1 ...
  • 一开始我认为这两者是不同的,后来经过查阅许多资料后发现,其实两者都是php的FastCGI管理器,php-cgiphp自带的管理器,而php-fpm是为php专门制作的FastCGI管理器(5.3之前是php的补丁功能,5.3之后加入到php中,...
  • Windows下Nginx和php-cgi的bat批处理快速启动方法!!!!
  • PHP 中的 CGI、FastCGI、PHP-CGIPHP-FPM 之间的关系整理 一个HTTP POST请求,从web浏览器,发送到web服务器(nginx),请求携带的URL paths、HTTP header、POST等数据,通过CGI转化为进程的环境变量,好让PHP取到。 ...
  • path=/opt/uClinux/bfin-uclinux/php/ --with-config-file-scan-dir=/opt/uClinux/bfin-uclinux/php/ --enable-discard-path --disable-cli --enable-cgi --without-iconv --enable-force-cgi-redirect make 时...
  • 主要介绍了linux php-cgi.exe占用cpu 100%的一次排障之旅,需要的朋友可以参考下
  • php-fpm 9000端口监听和php-cgi.sock监听

    千次阅读 2019-02-25 23:03:27
    在配置nginx 和php-fpm的时候一定要注意这俩配置要保持一致 不要 NGINX配置了9000 而php-fpm监听的是php-cgi.sock 或者nginx 转发给php-cgi.sock  而php-fpm监听的是9000 这样会502 bad getway!!!!  --------...
  • 本篇文章是对解决(php-cgi.exe - FastCGI 进程超过了配置的请求超时时限)的问题进行了详细的分析介绍,需要的朋友参考下
  • linux查看 php-cgi 进程数

    千次阅读 2019-02-28 12:12:13
    通过命令查看服务器上一共开了多少的 php-cgi 进程 ps -fe |grep "php-fpm"|grep "pool"|wc -l 查看已经有多少个php-cgi进程用来处理请求 netstat -anp |grep "php-fpm"
  • php-fpm 9000端口监听和php-cgi.sock监听

    千次阅读 2018-03-12 19:34:54
    在配置nginx 和php-fpm的时候一定要注意这俩配置要保持一致 不要 NGINX配置了9000 而php-fpm监听的是php-cgi.sock或者nginx 转发给php-cgi.sock  而php-fpm监听的是9000 这样会502 bad getway!!!! ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 104,525
精华内容 41,810
关键字:

php-cgi