使用php-fpm和fastcgi来执行php代码

传统所遵循或经常举行的事情。

关于FastCGI

FastCGI(Fast Common Gateway Interface),是一种用于网络服务器的协议。它通过与服务器进行交互来提供更快速、更高效的动态网页生成。FastCGI将网络服务器和处理动态内容的程序(如脚本)分离开来,从而提高了服务器的性能和响应速度。有关FastCGI的更多信息,请参考以下链接:https://ja.wikipedia.org/wiki/FastCGI

关于FPM:

http://php.net/manual/zh/install.fpm.php

https://php-fpm.org/

php-fpm 安装

用Yum进行安装

yum install php55w-fpm #php5.5の場合
yum install php56w-fpm #php5.6の場合
yum install php70w-fpm #php7.0の場合

自己编译安装
使用–enable-fpm参数编译php
例如

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/httpd/bin/apxs --with-zlib --with-mysql=mysqlnd --with-mysqli --enable-mbstring --enable-ftp --with-xsl --with-gd --with-jpeg-dir=/usr/local/libjpeg --with-png-dir=/usr/local/libpng --with-freetype-dir --with-pdo-mysql --with-openssl --enable-soap --with-mcrypt --enable-zip --with-tidy --with-curl --enable-gd-native-ttf --enable-bcmath --enable-sockets --enable-exif --with-gettext --with-ldap --enable-fpm --with-fpm-user=fpm-user --with-fpm-group=fpm-group

–启用FPM
–使用FPM用户=fpm-user
–使用FPM组=fpm-group

请将 fpm-user 和 fpm-group 更换为服务器用户。

FastCGI 安装

使用Yum来安装
bash
yum 安装 fcgi-devel 和 fcgi

从https://httpd.apache.org/mod_fcgid/下载mod_fcgid,并通过自行编译的方式进行安装。

tar zxf mod_fcgid-2.3.9.tar.gz
cd mod_fcgid-2.3.9/
APXS=/usr/local/httpd/bin/apxs ./configure.apxs
make
make install

编辑httpd.conf文件


#追加する
LoadModule fcgid_module modules/mod_fcgid.so 
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

#追加する
<IfModule fcgid_module>
 AddHandler fcgid-script .php
 FcgidWrapper "/usr/local/php/bin/php-cgi" .php  #自分のphpのpathに替えてください
</IfModule>

#追加する
<IfModule fcgid_module>
 AddHandler fcgid-script .php
 AddHandler fcgid-script .fcgi
 FcgidWrapper "/usr/local/php/bin/php-cgi" .php  #自分のphpのpathに替えてください
 <FilesMatch \.php$>
  SetHandler "proxy:fcgi://127.0.0.1:9000"
 </FilesMatch>
</IfModule>

编辑php-fpm.conf文件

; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
; will be used.
user = fpm-user
group = fpm-group

listen = 127.0.0.1:9000
; listen = /usr/local/php/var/run/socket

#socket と port 2つlisten方法がある、一つを選んでください

开始 php-fpm

/usr/local/php/sbin/php-fpm

用 phpinfo() 来确认

只要服务器API通过FPM/FastCGI正确显示,就表示成功!

广告
将在 10 秒后关闭
bannerAds