美文网首页
5. LAMP架构进阶

5. LAMP架构进阶

作者: 随便写写咯 | 来源:发表于2021-03-12 04:05 被阅读0次

    4 php-fpm 模式实现LAMP

    4.1 实现php-fpm(PHP FastCGI Proces Manager)模式

    对于php请求,httpd可以用模块和fastcgi两种方式实现动态程序的支持。

    fastcgi模式:php处理请求,不再由http服务器自身进行管理,http服务器把http协议转化为factcgi协议,通过socket发送给fastcgi专用进程处理php程序

    从稳定性上看,fastcgi是以独立的进程池运行程序,如果单独一个进程死掉,系统可以很轻易的丢弃,然后重新分配新的进程来运行逻辑。从安全性上看,fastcgi和http的server完全独立, fastcgi故障不会影响web server

    从性能上看,fastcgi把动态逻辑的处理从http server中分离出来,大负荷的IO处理还是留给宿主server,这样http server可以一心一意处理IO,对于一个普通的动态网页来说,逻辑处理可能只有一小部分,大量的图片等静态IO处理完全不需要逻辑程序的参与。
    从扩展性上讲,fastcgi是一个中立的技术标准,完全可以支持任何语言写的处理程序,如php,java,python等。而php-fpm就是用来支持php的fastcgi服务器。

    各种OS版本对fastcgi的支持

    CentOS 8: 默认使用FastCGI模式
    
    httpd-2.4:默认rpm包支持fcgi模块
    php包: 默认使用fpm模式
    php-fpm包:专用于将php运行于fpm模式
    
    CentOS 7:
    
    httpd-2.4:默认rpm包支持fcgi模块
    php-fpm包:专用于将php运行于fpm模式
    
    CentOS 6:
    
    PHP-5.3.2之前:默认不支持fpm机制;需要自行打补丁并编译安装
    httpd-2.2:默认不支持fcgi协议,需要自行编译此模块
    解决方案:编译安装httpd-2.4, php-5.3.3+
    

    4.2 安装php-fpm

    4.2.1 CentOS 8 安装php-fpm

    yum -y install php-fpm
    yum -y install php
    

    4.2.2 CentOS 7 BASE源安装php-fpm

    yum -y install php-fpm
    

    4.2.3 CentOS 7清华源yum安装较新版php-fpm(需要epel源)

    实验案例:

    在CentOS-7上利用清华源yum安装较新版php-fpm, 让php-fpm和apache运行在独立的服务器
    在CentOS-8上安装httpd, 与php-fpm通过tcp:9000端口通讯
    
    [root@centos7 ~]#yum install https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm
    
    #安装php-fpm5.6版
    [root@centos7 ~]#yum install php56-php-fpm  php56-php-mysql
    
    #安装php-fpm7.4版    
    [root@centos7 ~]#yum install php74-php-fpm  php74-php-mysqlnd php74-php-opcache php74-php-json
    [04:11:31 root@centos-7-6 ~]#systemctl enable --now php74-php-fpm
    Created symlink from /etc/systemd/system/multi-user.target.wants/php74-php-fpm.service to /usr/lib/systemd/system/php74-php-fpm.service.
    [04:12:29 root@centos-7-6 ~]#ss -ntl
    State      Recv-Q Send-Q                                             Local Address:Port                                                            Peer Address:Port              
    LISTEN     0      128                                                            *:22                                                                         *:*                  
    LISTEN     0      100                                                    127.0.0.1:25                                                                         *:*                  
    LISTEN     0      128                                                    127.0.0.1:9000    # 启动php-fpm后, 会监听在9000端口, 为了提供跨网络的FastCGI服务                                                           *:*                  
    LISTEN     0      128                                                         [::]:22                                                                      [::]:*                  
    LISTEN     0      100                                                        [::1]:25                                                                      [::]:*                  
    [04:12:31 root@centos-7-6 ~]#
    
    
               ├─php-fpm(1244)─┬─php-fpm(1245)
               │               ├─php-fpm(1246)
               │               ├─php-fpm(1247)
               │               ├─php-fpm(1248)
               │               └─php-fpm(1249)
    

    4.3 配置php-fpm

    • 配置文件:
    /etc/opt/remi/php74/php-fpm.conf # 主配置文件
    /etc/opt/remi/php74/php-fpm.d/www.conf # 扩展配置文件
    
    主配置文件选项
    
    vim /etc/opt/remi/php74/php-fpm.conf
    daemonize = yes # 是否将程序运行在后台, docker中要为no, 一般为yes
    
    扩展配置文件
    
    /etc/opt/remi/php74/php-fpm.d/www.conf
    
    listen = 127.0.0.1:9000 # 定义了php-fpm默认监听9000端口  ---> listen = 9000 # 允许远程访问
    ...
    ; RPM: apache user chosen to provide access to the same directories as httpd                                                                                                        
    user = apache # 安装php-fpm会自动创建apache用户, 即使没有安装httpd也会创建
    ; RPM: Keep a group allowed to write in log dir.
    group = apache
    listen.allowed_clients = 0.0.0.0  # 允许任何人连接, 默认是127.0.0.1
    listen = /var/run/php.sock # UDS模式使用(apache和php-fpm程序在同一台服务器时可以通过Unix套接字通信), 指定生成的 Unix Socket文件的路径. UDS在httpd-2.4.7后引入
    listen.owner = apache # UDS模式使用, 指定生成的Unix Socket文件的所有者
    listen.group  = apache # UDS模式使用, 指定生成的Unix Socket文件的所属组
    listene.mode = 0666 # UDS模式使用, 指定生成的Unix Socket文件的权限
    listen.acl_users = apache, nginx # 指定用户访问Unix Socket文件, listen.owner和listen.group将无效
    listen.backlog = -1 # 等待队列的长度 -1 表示无限制
    pm = dynamic | static # static固定数量的子进程, dynamic子进程数量以动态模式管理
    pm.max_children = 50 # 固定数量的子进程
    pm.start_servers = 5 # 类似于apache预生成进程的配置
    pm.min_spare_servers = 5
    pm.max_spare_servers = 35
    pm.max_requests = 500
    php_value[session.save_handler] = files
    php_value[session.save_path]    = /var/opt/remi/php74/lib/php/session # 设置session存放位置
    access.log = log/$pool.access.log # 访问日志
    access.format = "%R - %u %t \"%m %r%Q%q\" %s %f %{mili}d %{kilo}M %C%%" # 访问日志格式
    request_slowlog_timeout = 0 # 当一个请求到达该设置的超时时间后, 就会将对应的php调用堆栈信息完整写入到慢日志中, 设置为0, 表示off, 可用单位: s秒, m分, h小时, d天. 默认为s秒, 默认值为0关闭
    slowlog = /var/opt/remi/php74/log/php-fpm/www-slow.log # 慢请求的记录日志
    pm.status_path = /status # php-fpm的状态页面, 可以修改为/php-status, 来和apache的状态页面区分开
    ping.path = /ping # 测试当前php-fpm是否存活
    
    
    • 重启服务验证
    [21:15:05 root@centos-7-6 ~]#systemctl restart php74-php-fpm.service
    
    LISTEN     0      128                                                         [::]:9000    # 开启900端口后, apache和php-fpm就可以运行在不同的服务器, 通过tcp协议来通讯                                                                 [::]:*  
    

    4.4 配置httpd支持FastCGI

    注意:在HTTPD服务器上必须启用proxy_fcgi_module模块,才能充当php-fpm客户端

    CentOS-8上安装apache

    [21:23:20 root@apache ~]#yum -y install httpd
    
    [21:47:51 root@apache ~]#httpd -M | grep fcgi
    AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::20c:29ff:fe8c:d0f1. Set the 'ServerName' directive globally to suppress this message
     proxy_fcgi_module (shared)
    
    图片.png

    创建apache支持php-fpm的配置文件

    [21:48:26 root@apache ~]#vim  /etc/httpd/conf.d/php-fpm.conf
    
    <IfModule dir_module>
        DirectoryIndex index.php  index.html                                                                                                                                            
    </IfModule>  # 指定, 当访问apache站点根路径/var/www/html, 默认会访问index.php文件l, 这样一旦访问根路径, 那么就会访问index.php页面, 配合第三行配置, 当访问以.php结尾的文件时, 就通过FCGI协议, 连接到10.0.0.187:9000/data/html目录下, 查找index.php程序
    ProxyRequests Off # 关闭正向代理功能
    ProxyPassMatch ^/(.*\.php)$ fcgi://10.0.0.187:9000/data/html/$1  # 这里的/data/html指的是FCGI服务器上, 存放php程序的路径, 可以自定义, 而不是apache服务器上的文件路径
    #以上开启FCGI反向代理,“^/”这处的”/“是相对于后面的/data/html而言,后面的$1是指前面的/(.*.php). 当访问的是别的.php文件时, 也是交给10.0.0.187, 去/data/html目录和子目录找相应的php文件做处理
    ProxyPassMatch ^/(php-status|ping) fcgi://10.0.0.187:9000 # 开启php-fpm状态页 # 状态页面路径要和php配置文件一致, 指定当用户访问/php-status时, 交给10.0.0.187上的php-fpm去处理
    

    如果php-fpm和apache在同一台主机,也可以用 UDS(Unix Domain Socket)方式, 不过要求apache在2.4.9版本以上

    ProxyPassMatch ^/(.*\.php)$ unix:/var/run/php.sock|fcgi://localhost/app/httpd24/htdocs/$1
    

    注意: 当部署的服务, 既包括静态资源, 也包括动态资源, 并且是把apache和php-fpm部署在不同的服务器上时, 需要把软件包向apache的数据目录和php定义的数据目录都拷贝一份, 因为静态资源需要由apache处理, 只有动态的.php文件才需要转发给php-fpm处理
    一般工作环境都会把apache和php-fpm放在一台服务器删部署, 不会分开
    实际工作中, 需要与开发人员协调, 静态资源和动态资源的保存目录, 实现动静分离

    4.5 实战案例

    实现 CentOS 7 编译安装基于 FastCGI 模式的多虚拟主机的wordpress和discuzz的LAMP架构 
    

    1. 环境准备

    环境准备
    
    两台主机:
    
        一台主机:apache+php(FastCGI模式) - CentOS 7 10.0.0.207
        一台主机:MySQL 5.7 服务器 - CentOS 7 10.0.0.197
    
    软件版本:
    
        mysql-5.7.31-linux-glibc2.12-x86_64.tar 通用二进制格式
        apr-1.7.0.tar
        apr-util-1.6.1.tar
        httpd-2.4.46.tar
        php-7.4.10.tar
        wordpress-5.4.2-zh_CN.tar
        Discuz_X3.4_SC_UTF8_20210119
    

    2. 编译安装httpd-2.4.46

    [01:31:52 root@lap ~]#ll
    total 37012
    -rw-r--r-- 1 root root   872238 Sep  2  2020 apr-1.7.0.tar.bz2
    -rw-r--r-- 1 root root   428595 Sep  2  2020 apr-util-1.6.1.tar.bz2
    -rw-r--r-- 1 root root  7187805 Sep  2  2020 httpd-2.4.46.tar.bz2
    

    安装步骤

    https://www.jianshu.com/p/03bfd5c0fc46
    

    验证

    [01:52:12 root@lap ~/httpd-2.4.46]#curl localhost 
    <html><body><h1>It works!</h1></body></html>
    

    3. 编译安装MySQL 5.7.31

    [01:32:48 root@mysql ~]#ls
    mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz  mysql_install.sh
    [01:42:55 root@mysql ~]#bash mysql_install.sh
    
    yum -y install libaio numactl-libs
    groupadd mysql
    useradd -r -g mysql -s /bin/false mysql
    tar xf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz -C /usr/local
    cd /usr/local
    ln -s mysql-5.7.31-linux-glibc2.12-x86_64 mysql
    chown -R mysql.mysql /usr/local/mysql  #此处/usr/local/mysql/bin/mysql_secure_installation目录和内容的owner都不是mysql,需要修改
    
    echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
    . /etc/profile.d/mysql.sh
    mv /etc/my.cnf /etc/my.cnf.bak
    cat >> /etc/my.cnf <<EOF
    [mysqld]
    datadir=/data/mysql
    skip_name_resolve=1
    socket=/data/mysql/mysql.sock
    log-error=/data/mysql/mysql.log
    pid-file=/data/mysql/mysql.pid
    [client]
    socket=/data/mysql/mysql.sock
    EOF
    mkdir -pv /data/mysql && chown -R mysql:mysql /data/mysql # 需要修改/data/mysql权限为mysql:mysql
    mysqld --initialize --user=mysql --datadir=/data/mysql #mysqld --initialize会自动创建/data/mysql目录, 但是前提是其上级目录, /data事先存在, 因此要事先手动创建/data/mysql目录
    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld  
    chkconfig --add mysqld
    service mysqld start
    awk '/temporary password/{print $NF}' /data/mysql/mysql.log > /root/pd.txt
    

    退出当前登录, 使环境变量生效

    修改root密码

    [01:56:27 root@database ~]#mysqladmin -uroot -p'EUOSqp<y=4RZ' password linux
    mysqladmin: [Warning] Using a password on the command line interface can be insecure.
    Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
    
    mysql> select user, host from mysql.user;
    +---------------+-----------+
    | user          | host      |
    +---------------+-----------+
    | mysql.session | localhost |
    | mysql.sys     | localhost |
    | root          | localhost | # 默认只有本地登录
    +---------------+-----------+
    3 rows in set (0.00 sec)
    

    创建wordpress数据库, 创建wordpress用户

    mysql> create database wordpress; 
    Query OK, 1 row affected (0.00 sec)
    
    mysql> grant all on wordpress.* to  wordpress@'10.0.0.%' identified by 'wordpress';
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    
    mysql> select user, host from mysql.user;
    +---------------+-----------+
    | user          | host      |
    +---------------+-----------+
    | wordpress     | 10.0.0.%  |
    | mysql.session | localhost |
    | mysql.sys     | localhost |
    | root          | localhost |
    +---------------+-----------+
    4 rows in set (0.00 sec)
    

    4. 编译安装php-7.4

    安装依赖包

    [02:11:22 root@lap ~]#yum install gcc libxml2-devel bzip2-devel libmcrypt-devel sqlite-devel oniguruma-devel -y 
    
    [02:11:39 root@lap ~]#ls
    php-7.4.10.tar.gz
    

    解压, 编译安装

    [02:11:47 root@lap ~]#tar xf php-7.4.10.tar.gz 
    
    [02:16:27 root@lap ~/php-7.4.10]#cd php-7.4.10/
    #  --enable-fpm 指定以fpm模式运行
    [02:16:27 root@lap ~/php-7.4.10]#./configure --prefix=/apps/php74 --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-openssl --with-zlib --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --enable-mbstring --enable-xml --enable-sockets --enable-fpm --enable-maintainer-zts --disable-fileinfo
    
    [02:19:17 root@lap ~/php-7.4.10]#make && make install
    

    修改php程序的PATH变量

    [02:39:07 root@lap ~]#vim /etc/profile.d/lamp.sh
    
    PATH=/apps/php74/bin:/app/httpd24/bin:$PATH                                                                                                                                                                               
    
    [02:43:15 root@lap ~]#source /etc/profile.d/lamp.sh
    [02:43:31 root@lap ~]#php --version
    PHP 7.4.10 (cli) (built: Mar 12 2021 02:29:35) ( ZTS )
    Copyright (c) The PHP Group
    Zend Engine v3.4.0, Copyright (c) Zend Technologies
    

    准备php配置文件, 源码包提供配置模板

    [02:44:26 root@lap ~]#cd php-7.4.10/
    [02:45:09 root@lap ~/php-7.4.10]#ls
    appveyor             buildconf            config.nice    CONTRIBUTING.md  include  main                modules              php.ini-production  sapi     TSRM                 Zend
    azure                buildconf.bat        config.status  docs             libs     Makefile            NEWS                 README.md           scripts  UPGRADING
    azure-pipelines.yml  CODING_STANDARDS.md  configure      ext              libtool  Makefile.fragments  pear                 README.REDIST.BINS  tests    UPGRADING.INTERNALS
    build                config.log           configure.ac   EXTENSIONS       LICENSE  Makefile.objects    php.ini-development  run-tests.php       travis   win32
    [02:45:10 root@lap ~/php-7.4.10]#cp php.ini-production /etc/php.ini
    

    准备fpm的service文件, 官方提供模板, 无需修改

    [02:45:21 root@lap ~/php-7.4.10]#cp sapi/fpm/php-fpm.service /lib/systemd/system
    

    修改fpm的配置文件

    [02:46:28 root@lap ~/php-7.4.10]#cd /apps/php74/etc
    [02:47:22 root@lap /apps/php74/etc]#cp php-fpm.conf.default php-fpm.conf
    [02:47:34 root@lap /apps/php74/etc]#cd php-fpm.d
    [02:47:46 root@lap /apps/php74/etc/php-fpm.d]#cp www.conf.default www.conf
    
    [02:47:53 root@lap /apps/php74/etc/php-fpm.d]#vim www.conf
    listen = 127.0.0.1:9000   # apache和php-fpm在同一个服务器, 可以监听127地址即可
    user = apache # 修改fpm运行用户
    group = apache  #修改fpm运行组
    pm.status_path = /php-status # 开启状态页
    ping.path = /ping   # 开启ping测试
    

    配置php-opcache加速器

    [02:51:33 root@lap /apps/php74/etc/php-fpm.d]#mkdir /etc/php.d
    
    [02:53:13 root@lap /apps/php74/etc/php-fpm.d]#vim /etc/php.d/opcache.ini
    
    [opcache]
    zend_extension=opcache.so
    opcache.enable=1     
    

    启动php-fpm

    [02:53:49 root@lap /apps/php74/etc/php-fpm.d]#systemctl daemon-reload 
    [02:55:06 root@lap /apps/php74/etc/php-fpm.d]#systemctl enable --now php-fpm
    Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
    

    安装准备工作完毕

    [02:38:57 root@lap ~]#ll /app
    total 0
    drwxr-xr-x 15 root root 175 Mar 12 01:45 httpd24
    [02:39:06 root@lap ~]#ll /apps
    total 0
    drwxr-xr-x 9 root root 88 Mar 12 02:30 php74
    
    [02:55:34 root@lap ~]#ss -ntl
    State      Recv-Q Send-Q                                             Local Address:Port                                                            Peer Address:Port              
    LISTEN     0      128                                                            *:22                                                                         *:*                  
    LISTEN     0      100                                                    127.0.0.1:25                                                                         *:*                  
    LISTEN     0      128                                                    127.0.0.1:9000                                                                       *:*                  
    LISTEN     0      128                                                         [::]:22                                                                      [::]:*                  
    LISTEN     0      100                                                        [::1]:25                                                                      [::]:*                  
    LISTEN     0      128                                                         [::]:80                                                                      [::]:* 
    

    5. 修改apache配置文件支持php-fpm

    [02:55:59 root@lap ~]#vim /app/httpd24/conf/httpd.conf 
    
    #取消一下两行注释
    LoadModule proxy_module modules/mod_proxy.so  
    LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so 
    
    #修改访问apache的默认页面
    
    <IfModule dir_module>
        DirectoryIndex index.php  index.html                                                                                                                                            
    </IfModule>
    
    #默认情况下, apache编译后不支持php, 需要添加MIME类型
    
    AddType application/x-httpd-php .php
    
    # 关闭正向代理, 使用反向代理
    ProxyRequests off  
    

    6. 添加第一个虚拟主机, 支持wordpress

    [03:11:01 root@lap ~]#vim /app/httpd24/conf/httpd.conf 
    
    <virtualhost *:80>
    servername wordpress.wang.org
    documentroot /data/wordpress
    <directory /data/wordpress>
    require all granted
    </directory>
    ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/data/wordpress/$1
    # 实现status和ping页面
    ProxyPassMatch ^/(php-status|ping)$ fcgi://127.0.0.1:9000/$1                                                                                                                        
    CustomLog "logs/access_wordpress_log" common
    </virtualhost>
    
    
    [03:11:12 root@lap ~]#ls
    wordpress-5.4.2-zh_CN.tar.gz
    
    [03:12:15 root@lap ~]#mv wordpress /data/
    [03:12:23 root@lap ~]#chown -R apache.apache /data/wordpress/
    [03:13:03 root@lap ~]#ll /data
    total 4
    drwxr-xr-x 5 apache apache 4096 Aug  3  2020 wordpress
    
    [03:13:06 root@lap ~]#systemctl restart httpd
    

    测试ping页面

    测试fpm状态页面

    图片.png

    测试访问10.0.0.207, 可以访问到wordpress登录页面

    图片.png

    不过因为使用的是虚拟主机, 所以要用域名登录wordpress, 进行配置, 如果直接使用ip地址登录进行配置, 那么之后就无法使用域名访问了

    修改Windows本地hosts文件

    10.0.0.207 wordpress.wang.org
    
    图片.png 图片.png 图片.png 图片.png

    7. 添加第二个虚拟主机, 支持discuzz

    [03:30:18 root@lap ~]#vim /app/httpd24/conf/httpd.conf
    
    <virtualhost *:80>
    servername discuzz.wang.org
    documentroot /data/discuzz
    <directory /data/discuzz>
    require all granted
    </directory>
    ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/data/discuzz/$1
    CustomLog "logs/access_discuzz_log" common
    </virtualhost>
    
    

    添加域名解析

    10.0.0.207 wordpress.wang.org discuzz.wang.org
    

    重启apache

    [03:33:55 root@lap ~]#systemctl restart httpd
    

    准备discuzz文件

    [03:43:20 root@lap ~]#mv Discuz_X3.4_SC_UTF8_20210119.zip  /opt
    [03:43:20 root@lap ~]#cd /opt
    [03:42:54 root@lap /opt]#tar xf Discuz_X3.4_SC_UTF8_20210119.zip 
    [03:44:45 root@lap /opt]#ls
    Discuz_X3.4_SC_UTF8_20210119.zip  qqqun.png  readme  readme.html  upload  utility
    
    # 只需要upload目录即可
    
    [03:44:46 root@lap /opt]#mv upload/ /data/discuzz
    [03:45:14 root@lap /opt]#ll /data
    total 8
    drwxr-xr-x 13 root   root   4096 Jan 19 21:06 discuzz
    drwxr-xr-x  5 apache apache 4096 Mar 12 03:26 wordpress
    [03:45:28 root@lap /opt]#chown apache.apache /data/discuzz -R
    

    浏览器测试访问

    图片.png

    8. 将tcp通信改成UDS通信

    因为是把apache和php-fpm都部署在了同一个服务器, 因此apache可以和php-fpm通过Unix套接字通信
    

    修改fpm配置文件

    [03:51:00 root@lap ~]#vim /apps/php74/etc/php-fpm.d/www.conf
    
    listen = /var/run/php-fpm.sock
    listen.owner = apache
    listen.group = apache
    listen.mode = 0660  
    

    重启fpm服务

    [03:53:29 root@lap ~]#systemctl restart php-fpm
    
    
    # 不在监听9000端口
    
    [03:53:51 root@lap ~]#ss -ntl
    State      Recv-Q Send-Q                                             Local Address:Port                                                            Peer Address:Port              
    LISTEN     0      128                                                            *:22                                                                         *:*                  
    LISTEN     0      100                                                    127.0.0.1:25                                                                         *:*                  
    LISTEN     0      128                                                         [::]:22                                                                      [::]:*                  
    LISTEN     0      100                                                        [::1]:25                                                                      [::]:*                  
    LISTEN     0      128                                                         [::]:80                                                                      [::]:*   
    
    [03:54:08 root@lap ~]#ll /var/run/php-fpm.sock 
    srw-rw---- 1 apache apache 0 Mar 12 03:53 /var/run/php-fpm.sock
    

    修改apache配置文件

    # 这里只修改wordpress虚拟主机
    
    #ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/data/wordpress/$1
    #ProxyPassMatch ^/(php-status|ping)$ fcgi://127.0.0.1:9000/$1
    ProxyPassMatch ^/(.*\.php)$ "unix:/var/run/php-fpm.sock|fcgi://localhost/data/wordpress"
    ProxyPassMatch ^/(php-status|ping)$ "unix:/var/run/php-fpm.sock|fcgi://localhost"  
    
    [03:57:39 root@lap ~]#systemctl restart httpd
    

    验证能正常访问即可

    图片.png

    UDS会稍微比本地127性能好一些, 但是区别不是很大

    相关文章

      网友评论

          本文标题:5. LAMP架构进阶

          本文链接:https://www.haomeiwen.com/subject/bdfnqltx.html