基于端口号实现 php-fpm 的LAMP (php-fpm与httpd不同服务器)
基于端口号实现 php-fpm 的LAMP (php-fpm与httpd不同服务器) 三台主机:一台A apache 一台C php-fpm, 一台B mariadb 1 A 编译安装httpd useradd -s /sbin/nologin apache 2.C 配置php-rpm配置文件(基本不用设置) vim /etc/php-fpm.d/www.conf listen = 9000 ;listen.allowed_clients = any #测试发现要注释掉 #确保运行php-fpm进程的用户对session目录有读写权限(测试没有此文件) mkdir /var/lib/php/session chown apache.apache /var/lib/php/session 设置站点ACL权限,主要是用于生成wordpress/wp-config.php文件。 mkdir /data/ cp wordpress /data/ setfacl -Rm u:apache:rwx /data/wordpress 3 B 安装数据库并账号授权 yum install mariadb-server mysql> create database wpdb; mysql> grant all on wpdb.* to wpuser@'192.168.80.%' identified by '123456'; 5. A配置httpd, 在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩充 LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so cat /usr/local/httpd/conf/conf.d/fcgi.conf #(虚拟主机方式) <VirtualHost *:80> AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps ProxyRequests Off #ProxyPassMatch "^/(.*\.php(/.*)?)$" "fcgi://192.168.80.110:9000/data/" ProxyPassMatch ^/(.*\.php)$ "fcgi://192.168.80.110:9000/data/$1" ProxyPassMatch ^/(status|ping) fcgi://192.168.80.110:9000 </VirtualHost> <IfModule dir_module> DirectoryIndex index.php index.html </IfModule>