基于端口号实现 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>                           

  

posted @ 2022-08-23 10:27  yuanbangchen  阅读(17)  评论(0编辑  收藏  举报