千家信息网

三台主机部署lamp(fast-cgi)

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,三台主机部署lamp(fast-cgi)实验要求:创建两个虚拟主机web1,web2,分别跑phpMyadmin、wordpress ,且为phpMyadmin提供https服务。三台主机:1.Ceh
千家信息网最后更新 2025年02月02日三台主机部署lamp(fast-cgi)

三台主机部署lamp(fast-cgi

实验要求:

创建两个虚拟主机web1,web2,分别跑phpMyadminwordpress ,且为phpMyadmin提供https服务。

三台主机:

1.Cehtos7.2 httpd.2-4 一块网卡 eno16777728 桥接模式 ip 172.16.254.79/16

2.centos7.2 php-fpm 一块网卡eno16777728 桥接模式 ip 172.16.250.205/16

3.centos7.2 mariadb-server 一块网卡 eno16777728 桥接模式 ip 172.16.252.180/16

三台主机安装所需的软件包:

1.yum -y install httpd samba mod-ssl

2.Yum -y install php-fpm php-mysql cifs-utils php-mbstring

3.Yum -y install mariadb-server

Httpd主机的配置:

创建两个虚拟站点的根目录:

Mkdir /data/web{1,2} -pv

Chown apache:apache /data/web{1,2}

把这两个目录/data/web1,/data/web2 通过samba共享出去。

Vim /etc/samba/smb.conf[php]

comment=php data

path=/data/web1

browseable=yes

write list=apache

[wordpress]

comment=wordpress data

path=/data/web2

browseable=yes

write list=apache

Pdbedit -a -u apache

Passwdord 123456

启动samba server

Systemctl start smb.service

Systemctl start nmb.service

创建两个虚拟主机web1,web2的配置文件:

ServerName www1.wudang.com

DocumentRoot /data/web1

DirectoryIndex index.php

ErrorLog logs/www1_error_log

CustomLog logs/www1_access_log combined

ProxyRequests Off

ProxyPassMatch ^/(.*\.php)$ fcgi://172.16.250.205:9000/data/web1/$1

Options Indexes FollowSymLinks

AllowOverride none

Require all granted

ServerName www2.shaolin.com

DocumentRoot /data/web2

DirectoryIndex index.php

ErrorLog logs/www2_error_log

CustomLog logs/www2_access_log combined

ProxyRequests Off

ProxyPassMatch ^/(.*\.php)$ fcgi://172.16.250.205:9000/data/web2/$1

Options Indexes FollowSymLinks

AllowOverride none

Require all granted

下载 phpMyAdmin-4.4.14.1-all-languages.zip wordpress-4.3.1-zh_CN.zip

解压两个应用程序包到站点根目录:

Unzip phpMyAdmin-4.4.14.1-all-languages.zip

Unzip wordpress-4.3.1-zh_CN.zip

创建两个应用程序根目录的软连接文件:

Ln -svf /data/web1/ phpMyAdmin-4.4.14.1-all-languages /data/web1/mpa

Ln -svf /data/web2/wordpress /data/web2/wordpress

配置两个应用程序与数据库mariadb的连接:

cp /data/web1/mpa/config.sample.inc.php /data/web1/mpa/config.inc.php

Vim /data/web1/mpa/config.inc.php

$cfg['blowfish_secret'] = '1rnbfOvowLY6GA'; ----生成密钥的随机数

$cfg['Servers'][$i]['host'] = 'localhost';-------------mariadb主机地址

Cp /data/web2/wordpress/wp-config-sample.php /data/web2/wordpress/wp-config.php

Vim /data/web2/wordpress/wp-config.php

define('DB_NAME', 'wordpress');-------事先创建好的数据库

/** MySQL数据库用户名 */

define('DB_USER', 'jack');-------- 管理数据库的用户名

/** MySQL数据库密码 */-----Jack用户连接数据库的密码

define('DB_PASSWORD', '123456');

/** MySQL主机 */

define('DB_HOST', '172.16.254.79');-------mariadb数据库的地址

启动mariadb

Mariadb-server 主机的配置:

Systemctl strart mariadb.service

连接数据库

Mysql

创建一个数据库用户:

Grant all on *.* to 'jack'@'%' identified by '123456' ;

Flush privileges;

启动httpd

Systemctl start httpd

Php-fpm主机的配置:

mkdir /data/web{1,2}

mkdir /data/web{1,2} -pv

mount.cifs -o username=apache //172.16.254.79/php /data/web

mount.cifs -o username=apache //172.16.254.79/wordpress /data/web2

mkdir /var/lib/php/session

chown apache:apache /var/lib/php/session

Vim /etc/php-fpm.d/www.conf

listen = 172.16.250.205:9000

; Default Value: any

#listen.allowed_clients = 127.0.0.1-----允许任何主机反代访问

启动php-fpm

Systemctl start php-fpm

http服务测试:测试机win7 hosts文件添加一条记录

172.16.254.79 www1.wudang.com www2.shaolin.com

http://www1.wudang.com/mpa

http://www2.shaolin.com/wordpress

创建CA证书:

(umask 066; openssl genrsa -out private/cakey.pem 1024)

openssl req -new -x509 -key private/cakey.pem -days 3650 -out cacert.pem

创建站点phpMyadmin私钥和证书:

(umask 066;openssl genrsa -out /etc/httpd/web1/php.key 1024) openssl req -new -key /etc/httpd/web1/php.key -days 365 -out /etc/httpd/web1/php.csr

openssl ca -in /etc/httpd/web1/php.csr -out certs/php.crt

Listen 443 httpsi

DocumentRoot "/data/web1/"

ServerName www1.wudang.com:443

ProxyRequests Off

ProxyPassMatch ^/(.*\.php)$ fcgi://172.16.250.205:9000/data/web1/$1

SSLProtocol All -SSLv2

DirectoryIndex index.php

SSLEngine on

ErrorLog logs/www1_ssl_error_log

LogLevel warn

SSLCertificateFIle /etc/httpd/web1/php.crt

SSLCertificateKeyFile /etc/httpd/web1/php.key

Options Indexes FollowSymLinks

AllowOverride all

Require all granted

CA的证书导入到浏览器中的受信任的根证书机构。

https测试:

https://www1.wudang.com/mpa


0