实验环境:均是CentOS7

httpd:172.16.254.88   2.4.6

PHP:172.16.250.140 5.4.16

mariadb:172.16.250.94  5.5.52

第三方应用程序是:phpMyAdmin

1、先配置httpd主机:

[root@www localhost]#cd /etc/httpd/conf.d/
[root@conf.d localhost]#cat vhost.conf 
DirectoryIndex index.php
<VirtualHost 172.16.254.88:80>
    ServerName  172.16.254.88
    DocumentRoot "/data/www"
    ProxyRequests Off        #关闭正向代理
    ProxyPassMatch ^/(.*\.php)$ fcgi://172.16.250.140:9000/data/www/$1    #表示后缀名为php的动态资源请求的时候转发到ip为172.16.250.140的主机进行处理;
    ProxyPassMatch ^/(pmstatus|ping.*)$ fcgi://172.16.250.140:9000/$1    #测试pmstatus和ping的内置功能
    <Directory "/data/www">
        Options FollowSymLinks
        AllowOverride None
        Require all granted 
    </Directory>
    KeepAlive On
    MaxKeepAliveRequests 100
    KeepAliveTimeout 15
ErrorLog /var/log/httpd/test_error.log
CustomLog /var/log/httpd/test_access.log combined 
</VirtualHost>

 

[root@conf.d localhost]#cd /data/www    #网页文件和第三方程序的路径,与PHP服务器上的文件一模一样
[root@www localhost]#ls
index1.php  index.php  phpMyAdmin-4.0.10.20  pma
[root@www localhost]#ll
total 12
-rw-r--r--. 1 root root   13 Jun  3 20:48 index1.php
-rw-r--r--. 1 root root  261 Jun  3 23:35 index.php
drwxr-xr-x. 9 root root 4096 Jun  3 23:18 phpMyAdmin-4.0.10.20
lrwxrwxrwx. 1 root root   21 Jun  4 00:10 pma -> phpMyAdmin-4.0.10.20/  #程序文件的软连接,方便访问
[root@phpMyAdmin-4.0.10.20 localhost]#pwd
/data/www/phpMyAdmin-4.0.10.20
[root@phpMyAdmin-4.0.10.20 localhost]#cp -av config.sample.inc.php config.inc.php
$cfg['blowfish_secret'] = 'jngkasfnysagfehfcsdkjdfa8b6d'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */  
##添加一些字符串
$cfg['Servers'][$i]['host'] = '172.16.250.94';  #配成mariadb的地址
[root@www localhost]#pwd
/data/www [root@www localhost]#cat index.php <html> <title>test</title> <body> <h2> CentOS7 Text</h2> <?php phpinfo(); ?> </body> </html>

 

[root@libraries localhost]#pwd
/data/www/phpMyAdmin-4.0.10.20/libraries
  * MySQL hostname or IP address
  *
  * @global string $cfg['Servers'][$i]['host']
  */
 $cfg['Servers'][$i]['host'] = '172.16.250.94';  ##修改mariadb的地址

 

2、PHP主机:

[root@www localhost]#yum install -y php php-fpm php-mysql
[root@www localhost]#cd /etc/php-fpm.d/
[root@php-fpm.d localhost]#cat www.conf
; Start a new pool named 'www'.
[www]

; The address on which to accept FastCGI requests.
; Valid syntaxes are:
;   'ip.add.re.ss:port'    - to listen on a TCP socket to a specific address on
;                            a specific port;
;   'port'                 - to listen on a TCP socket to all addresses on a
;                            specific port;
;   '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
listen = 172.16.250.140:9000    #本服务器地址

; Set listen(2) backlog. A value of '-1' means unlimited.
; Default Value: -1
;listen.backlog = -1
 pm.status_path = /pmstatus  #测试本服务器的进程状态

  ping.path = /ping    #ping的测试

  ping.response = pong  #pong的回应,测试服务器的通讯状态


curity feature and should be used whenever 
;       possible. However, all PHP paths will be relative to the chroot
;       (error_log, sessions.save_path, ...).
; Default Value: not set
;chroot = 
 
; Chdir to this directory at the start. This value must be an absolute path.
; Default Value: current directory or / when chroot
chdir = /data/www    #第三方程序存放目录和httpd的/data/www中的文件一模一样

; Set session path to a directory owned by process user
php_value[session.save_handler] = files
php_value[session.save_path] = /var/lib/php/session

3、mariadb主机:

[root@~ localhost]#yum -y install mariadb-server
[root@my.cnf.d localhost]#pwd
/etc/my.cnf.d
[root@my.cnf.d localhost]#cat server.cnf 
#
# this is only for the mysqld standalone daemon
[mysqld]
skip_name_resolve=ON
innodb_file_per_table=ON

 

#给用户授权连接,同样的给httpd的用户也要授权
[root@my.cnf.d localhost]#mysql -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 3 Server version: 5.5.52-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.250.94' IDENTIFIED BY '123456';

最后测试展示:输入

http://172.16.254.88/pma/index.php

输入:http://172.16.254.88/pmstatus

输入:http://172.16.254.88/

输入:http://172.16.254.88/ping