nginx实现fastcgi反向代理


nginx_http_fastcgi_module 用法

ngx_http_fastcgi_module
ngx_http_fastcgi_module模块
转发请求到FastCGI服务器,不支持php模块方式
fastcgi_pass address;
address为后端的fastcgi server的地址
可用位置:location, if in location
fastcgi_index name;
fastcgi默认的主页资源
示例:fastcgi_index index.php;
fastcgi_param parameter value [if_not_empty];
设置传递给 FastCGI 服务器的参数值,可以是文本,变量或组合

 

ngx_http_fastcgi_module
示例1:
1)在后端服务器先配置fpm server和mariadb-server
2)在前端nginx服务上做以下配置:
location ~* \.php$ {
root /data/php; #$document_root 调用root目录
fastcgi_pass 后端fpm服务器IP:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fastcgi_param SCRIPT_FILENAME /data/php$fastcgi_script_name;
#如果SCRIPT_FILENAME是绝对路径,则可以省略root /data/php;
include fastcgi_params;
}

 

示例2:通过/pm_status和/ping来获取fpm server状态信息
location ~* ^/(fpm_status|ping)$ {
fastcgi_pass 后端fpm服务器IP:9000;
fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
include fastcgi_params;
}

实验一:实现nginx基于异构反向代理服务器,下面是拓扑图。

 

 

 实验环境:

服务端:nginx和fastcgi   192.168.37.100

1、服务端安装软件:yum -y install php-fpm php-mysql nginx

[root@centos7 ~]# yum -y install php-fpm php-mysql
Loaded plugins: fastestmirror
Determining fastest mirrors
base                                                                                                                                                                                                                      | 3.6 kB  00:00:00     
epel                                                                                                                                                                                                                      | 4.7 kB  00:00:00     
(1/2): epel/7/x86_64/updateinfo                                                                                                                                                                                           | 1.0 MB  00:00:00     
(2/2): epel/7/x86_64/primary_db                                                                                                                                                                                           | 6.9 MB  00:00:01     
Resolving Dependencies
--> Running transaction check
---> Package php-fpm.x86_64 0:5.4.16-48.el7 will be installed
--> Processing Dependency: php-common(x86-64) = 5.4.16-48.el7 for package: php-fpm-5.4.16-48.el7.x86_64
---> Package php-mysql.x86_64 0:5.4.16-48.el7 will be installed
--> Processing Dependency: php-pdo(x86-64) = 5.4.16-48.el7 for package: php-mysql-5.4.16-48.el7.x86_64
--> Running transaction check
---> Package php-common.x86_64 0:5.4.16-48.el7 will be installed
--> Processing Dependency: libzip.so.2()(64bit) for package: php-common-5.4.16-48.el7.x86_64
---> Package php-pdo.x86_64 0:5.4.16-48.el7 will be installed
--> Running transaction check
---> Package libzip.x86_64 0:0.10.1-8.el7 will be installed
--> Finished Dependency Resolution 
[root@centos7 ~]# rpm -ql php-fpm
/etc/logrotate.d/php-fpm
/etc/php-fpm.conf
/etc/php-fpm.d
/etc/php-fpm.d/www.conf   #fastcgi配置文件
/etc/sysconfig/php-fpm
/run/php-fpm
/usr/lib/systemd/system/php-fpm.service
/usr/lib/tmpfiles.d/php-fpm.conf
/usr/sbin/php-fpm
/usr/share/doc/php-fpm-5.4.16
/usr/share/doc/php-fpm-5.4.16/fpm_LICENSE
/usr/share/doc/php-fpm-5.4.16/php-fpm.conf.default
/usr/share/fpm
/usr/share/fpm/status.html
/usr/share/man/man8/php-fpm.8.gz
/var/log/php-fpm

2、修改php-fom配置文件,其他可以默认不改,只需要修改user和group

[root@centos7 ~]# vim /etc/php-fpm.d/www.conf
user = nginx
group = nginx

3、启动php-fpm服务

systemctl start php-fpm

4、查看php-fpm9000端口是否打开

1 [root@centos7 ~]# ss -ntl
2 State       Recv-Q Send-Q                                                                           Local Address:Port                                                                                          Peer Address:Port              
3 LISTEN      0      128                                                                                          *:22                                                                                                       *:*                  
4 LISTEN      0      128                                                                                  127.0.0.1:9000                                                                                                     *:*                  
5 LISTEN      0      128                                                                                       [::]:22                                                                                                    [::]:*    

5、创建php程序的存放目录,并创建php测试页面

[root@centos7 ~]# mkdir /data/php
[root@centos7 ~]# vim /data/php/index.php
<?php
phpinfo();
?>

 

6、查看nginx目录下fastcgi.conf配置文件,配置文件里引用了各种变量参数,对应的参数都放在了fastcgi_params文件里面了,主要用到fastcgi_params。

[root@centos7 nginx]# cat fastcgi.conf

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REQUEST_SCHEME     $scheme;
fastcgi_param  HTTPS              $https if_not_empty;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;
[root@centos7 nginx]# ll
total 68
drwxr-xr-x 2 root root    6 Oct  3  2019 conf.d
drwxr-xr-x 2 root root    6 Oct  3  2019 default.d
-rw-r--r-- 1 root root 1077 Oct  3  2019 fastcgi.conf
-rw-r--r-- 1 root root 1077 Oct  3  2019 fastcgi.conf.default
-rw-r--r-- 1 root root 1007 Oct  3  2019 fastcgi_params
-rw-r--r-- 1 root root 1007 Oct  3  2019 fastcgi_params.default
-rw-r--r-- 1 root root 2837 Oct  3  2019 koi-utf
-rw-r--r-- 1 root root 2223 Oct  3  2019 koi-win
-rw-r--r-- 1 root root 5231 Oct  3  2019 mime.types
-rw-r--r-- 1 root root 5231 Oct  3  2019 mime.types.default
-rw-r--r-- 1 root root 2471 Oct  3  2019 nginx.conf
-rw-r--r-- 1 root root 2656 Oct  3  2019 nginx.conf.default
-rw-r--r-- 1 root root  636 Oct  3  2019 scgi_params
-rw-r--r-- 1 root root  636 Oct  3  2019 scgi_params.default
-rw-r--r-- 1 root root  664 Oct  3  2019 uwsgi_params
-rw-r--r-- 1 root root  664 Oct  3  2019 uwsgi_params.default
-rw-r--r-- 1 root root 3610 Oct  3  2019 win-utf

 

7、修改nginx配置文件:两种语法可支持:

语法一:

[root@centos7 nginx]# vim nginx.conf
server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;
        tcgi_module
        location ~* \.php$ {
        root /data/php; #$document_root 调用root目录
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        }

 语法二:

location ~* \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/php$fastcgi_script_name;
#如果SCRIPT_FILENAME是绝对路径,则可以省略root /data/php;
include fastcgi_params;
}

 

8、启动nginx服务

[root@centos7 nginx]# systemctl start nginx 

 

9、客户端测试

 

 实验二:基于上面实验构建wordpress服务器。

实验环境:

上面nginx使用的wordpress版本是wordpress-5.0.3-zh_CN.tar.gz

准备一台数据库服务器,使用mariadb-server  192.168.37.101

 10、数据库服务器安装mariadb

[root@centos7 nginx]# yum -y install mariadb-server
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package mariadb-server.x86_64 1:5.5.65-1.el7 will be installed
--> Processing Dependency: mariadb(x86-64) = 1:5.5.65-1.el7 for package: 1:mariadb-server-5.5.65-1.el7.x86_64
--> Processing Dependency: perl-DBI for package: 1:mariadb-server-5.5.65-1.el7.x86_64
--> Processing Dependency: perl-DBD-MySQL for package: 1:mariadb-server-5.5.65-1.el7.x86_64
--> Processing Dependency: perl(Data::Dumper) for package: 1:mariadb-server-5.5.65-1.el7.x86_64
--> Processing Dependency: perl(DBI) for package: 1:mariadb-server-5.5.65-1.el7.x86_64
--> Processing Dependency: libaio.so.1(LIBAIO_0.4)(64bit) for package: 1:mariadb-server-5.5.65-1.el7.x86_64
--> Processing Dependency: libaio.so.1(LIBAIO_0.1)(64bit) for package: 1:mariadb-server-5.5.65-1.el7.x86_64
--> Processing Dependency: libaio.so.1()(64bit) for package: 1:mariadb-server-5.5.65-1.el7.x86_64

11、启动mariadb服务

[root@centos7 nginx]# systemctl start mariadb

12、数据库授权。
[root@centos7 ~]# mysql -e 'create database wordpress;grant all on wordpress.* to wordpress@"192.168.37.%" identified by "centos"'

13、服务端测试连接数据库
[root@centos7 nginx]# mysql -h192.168.37.101 -uwordpress -pcentos
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 5.5.65-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> 

14、准备wordpress的php程序文件。
[root@centos7 php]# tar xvf wordpress-5.0.3-zh_CN.tar.gz
[root@centos7 php]# mv * /data/php/
[root@centos7 php]# ls 
index.php    readme.html  wordpress-5.0.3-zh_CN.tar.gz  wp-admin            wp-comments-post.php  wp-content   wp-includes        wp-load.php   wp-mail.php      wp-signup.php     xmlrpc.php
license.txt  test.php     wp-activate.php               wp-blog-header.php  wp-config.php         wp-cron.php  wp-links-opml.php  wp-login.php  wp-settings.php  wp-trackback.php
[root@centos7 php]# mv wp-config-sample.php wp-config.php
define('DB_NAME', 'wordpress');

/** MySQL数据库用户名 */
define('DB_USER', 'wordpress');

/** MySQL数据库密码 */
define('DB_PASSWORD', 'centos');

/** MySQL主机 */
define('DB_HOST', '192.168.37.101');
[root@centos7 php]# chown -R root.root .
[root@centos7 php]# ll
total 11036
-rw-r--r--  1 root root      418 Sep 25  2013 index.php
-rw-r--r--  1 root root    19935 Jan  4  2019 license.txt
-rw-r--r--  1 root root     6989 Jan 11  2019 readme.html
-rw-r--r--  1 root root       20 Sep 22 19:41 test.php
-rw-r--r--  1 root root 11098483 Sep 22 20:26 wordpress-5.0.3-zh_CN.tar.gz
-rw-r--r--  1 root root     6878 Dec 13  2018 wp-activate.php
drwxr-xr-x  9 root root     4096 Jan 11  2019 wp-admin
-rw-r--r--  1 root root      364 Dec 19  2015 wp-blog-header.php
-rw-r--r--  1 root root     1889 May  3  2018 wp-comments-post.php
-rw-r--r--  1 root root     2720 Sep 22 20:52 wp-config.php
drwxr-xr-x  5 root root       69 Jan 11  2019 wp-content
-rw-r--r--  1 root root     3669 Aug 20  2017 wp-cron.php
drwxr-xr-x 19 root root     8192 Jan 11  2019 wp-includes
-rw-r--r--  1 root root     2422 Nov 21  2016 wp-links-opml.php
-rw-r--r--  1 root root     3306 Aug 22  2017 wp-load.php
-rw-r--r--  1 root root    37296 Dec 13  2018 wp-login.php
-rw-r--r--  1 root root     8048 Jan 11  2017 wp-mail.php
-rw-r--r--  1 root root    17421 Oct 23  2018 wp-settings.php
-rw-r--r--  1 root root    30091 Apr 30  2018 wp-signup.php
-rw-r--r--  1 root root     4620 Oct 24  2017 wp-trackback.php
-rw-r--r--  1 root root     3065 Sep  1  2016 xmlrpc.php

15、准备nginx静态页面文件
[root@centos7 php]#tar xvf wordpress- 5.0 . 3 -zh_CN.tar.gz -C /usr/share/nginx/html/ [root@centos7 php]# ls /usr/share/nginx/html/ 404 .html 50x.html en-US icons img index.html nginx-logo.png poweredby.png wordpress [root@centos7 php]# mv /usr/share/nginx/html/wordpress /* /usr/share/nginx/html/ [root@centos7 php]# ls /usr/share/nginx/html/ 404.html en-US img index.php nginx-logo.png readme.html wp-activate.php wp-blog-header.php wp-config-sample.php wp-cron.php wp-links-opml.php wp-login.php wp-settings.php wp-trackback.php 50x.html icons index.html license.txt poweredby.png wordpress wp-admin wp-comments-post.php wp-content wp-includes wp-load.php wp-mail.php wp-signup.php xmlrpc.php
[root@centos7 html]# setfacl -R -m u:nginx:rwx wp-content/ #图片都上传到此目录下面,给读写执行权限 [root@centos7 html]#
 
16、浏览器访问:(注意:我是用yum安装的nginx,配置文件里面server里面没有定义index,我在配置文件server里面加了一行,index index.php index.html后就可以直接ip地址访问)
 

 

 

 

 

 

自定义fastcgi状态页面:

17、修改fastcgi配置文件:

[root@centos7 nginx]# rpm -ql php-fpm
/etc/logrotate.d/php-fpm
/etc/php-fpm.conf
/etc/php-fpm.d
/etc/php-fpm.d/www.conf
/etc/sysconfig/php-fpm
/run/php-fpm
/usr/lib/systemd/system/php-fpm.service
/usr/lib/tmpfiles.d/php-fpm.conf
/usr/sbin/php-fpm
/usr/share/doc/php-fpm-5.4.16
/usr/share/doc/php-fpm-5.4.16/fpm_LICENSE
/usr/share/doc/php-fpm-5.4.16/php-fpm.conf.default
/usr/share/fpm
/usr/share/fpm/status.html
/usr/share/man/man8/php-fpm.8.gz
/var/log/php-fpm

[root@centos7 nginx]# vim /etc/php-fpm.d/www.conf
pm.status_path = fpm_/status
ping.path = /ping ping.response
= pong

18、修改nginx配置文件:在server下面加上如下配置

        location ~* ^/(fpm_status|ping)$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
        include fastcgi_params;
        }

19、重启php-fpm和nginx服务器

[root@centos7 nginx]# systemctl restart php-fpm
[root@centos7 nginx]# systemctl restart nginx

20、浏览器测试

 

 

 

 

 

实验三:实现更高版本的wordpress,上面实验nginx和wordpress使用的是同一台服务器,这次将nginx和wordpress分开在不同服务器上。

服务器ip地址为:192.168.37.103

wordpress版本为:wordpress-5.2.tar.gz

21、卸载nginx服务器里面的php-fpm和php-mysql

[root@centos7 nginx]# yum history info 5
Loaded plugins: fastestmirror
Transaction ID : 5 Begin time : Tue Sep 22 19:26:11 2020 Begin rpmdb : 338:be87e5ef35e7d12defba45b02c1be74b16dfe356 End time : 19:26:12 2020 (1 seconds) End rpmdb : 343:97e047309d55e70ea7393cc0aee03252e2d1668b User : root <root> Return-Code : Success Command Line : -y install php-fpm php-mysql Transaction performed with: Installed rpm-4.11.3-43.el7.x86_64 @anaconda Installed yum-3.4.3-167.el7.centos.noarch @anaconda Installed yum-plugin-fastestmirror-1.1.31-53.el7.noarch @anaconda Packages Altered: Dep-Install libzip-0.10.1-8.el7.x86_64 @base Dep-Install php-common-5.4.16-48.el7.x86_64 @base Install php-fpm-5.4.16-48.el7.x86_64 @base Install php-mysql-5.4.16-48.el7.x86_64 @base Dep-Install php-pdo-5.4.16-48.el7.x86_64 @base history info [root@centos7 nginx]# yum history undo 5

22、安装清华大学支持php的yum源,因为wordpress5.2版本需要安装高版本的php

[root@centos7 ~]# yum -y install https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm
Loaded plugins: fastestmirror
remi-release-7.rpm                                                                                                                                                                                                        |  20 kB  00:00:00 Examining /var/tmp/yum-root-0OfPoE/remi-release-7.rpm: remi-release-7.8-1.el7.remi.noarch Marking /var/tmp/yum-root-0OfPoE/remi-release-7.rpm to be installed Resolving Dependencies
[root@centos7 ~]# rpm -ql remi-release.noarch 0:7.8-1.el7.remi 
/etc/pki/rpm-gpg/RPM-GPG-KEY-remi /etc/pki/rpm-gpg/RPM-GPG-KEY-remi2017 /etc/pki/rpm-gpg/RPM-GPG-KEY-remi2018 /etc/pki/rpm-gpg/RPM-GPG-KEY-remi2019 /etc/pki/rpm-gpg/RPM-GPG-KEY-remi2020 /etc/yum.repos.d/remi-glpi91.repo /etc/yum.repos.d/remi-glpi92.repo /etc/yum.repos.d/remi-glpi93.repo /etc/yum.repos.d/remi-glpi94.repo /etc/yum.repos.d/remi-modular.repo /etc/yum.repos.d/remi-php54.repo /etc/yum.repos.d/remi-php70.repo /etc/yum.repos.d/remi-php71.repo /etc/yum.repos.d/remi-php72.repo /etc/yum.repos.d/remi-php73.repo /etc/yum.repos.d/remi-php74.repo /etc/yum.repos.d/remi-php80.repo /etc/yum.repos.d/remi-safe.repo /etc/yum.repos.d/remi.repo package 0:7.8-1.el7.remi is not installed [root@centos7 ~]# cat /etc/yum.repos.d/remi-php73.repo # This repository only provides PHP 7.3 and its extensions # NOTICE: common dependencies are in "remi-safe" [remi-php73] name=Remi's PHP 7.3 RPM repository for Enterprise Linux 7 - $basearch #baseurl=http://rpms.remirepo.net/enterprise/7/php73/$basearch/ #mirrorlist=https://rpms.remirepo.net/enterprise/7/php73/httpsmirror mirrorlist=http://cdn.remirepo.net/enterprise/7/php73/mirror enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi  [remi-php73-debuginfo] name=Remi's PHP 7.3 RPM repository for Enterprise Linux 7 - $basearch - debuginfo baseurl=http://rpms.remirepo.net/enterprise/7/debug-php73/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi  [remi-php73-test] name=Remi's PHP 7.3 test RPM repository for Enterprise Linux 7 - $basearch #baseurl=http://rpms.remirepo.net/enterprise/7/test73/$basearch/ #mirrorlist=https://rpms.remirepo.net/enterprise/7/test73/httpsmirror mirrorlist=http://cdn.remirepo.net/enterprise/7/test73/mirror enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi  [remi-php73-test-debuginfo] name=Remi's PHP 7.3 test RPM repository for Enterprise Linux 7 - $basearch - debuginfo baseurl=http://rpms.remirepo.net/enterprise/7/debug-test73/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

 

[root@centos7 ~]# vim /etc/yum.repos.d/remi-php73.repo

# This repository only provides PHP 7.3 and its extensions # NOTICE: common dependencies are in "remi-safe" [remi-php73] name=Remi's PHP 7.3 RPM repository for Enterprise Linux 7 - $basearch #baseurl=http://rpms.remirepo.net/enterprise/7/php73/$basearch/ #mirrorlist=https://rpms.remirepo.net/enterprise/7/php73/httpsmirror mirrorlist=http://cdn.remirepo.net/enterprise/7/php73/mirror enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi  [remi-php73-debuginfo] name=Remi's PHP 7.3 RPM repository for Enterprise Linux 7 - $basearch - debuginfo baseurl=http://rpms.remirepo.net/enterprise/7/debug-php73/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi  [remi-php73-test] name=Remi's PHP 7.3 test RPM repository for Enterprise Linux 7 - $basearch #baseurl=http://rpms.remirepo.net/enterprise/7/test73/$basearch/ #mirrorlist=https://rpms.remirepo.net/enterprise/7/test73/httpsmirror mirrorlist=http://cdn.remirepo.net/enterprise/7/test73/mirror enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi  [remi-php73-test-debuginfo] name=Remi's PHP 7.3 test RPM repository for Enterprise Linux 7 - $basearch - debuginfo baseurl=http://rpms.remirepo.net/enterprise/7/debug-test73/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi ~ 

22、安装php73-php-fpm php73-php-mysql

[root@centos7 ~]# yum list php*

[root@centos7 ~]# yum -y install php73-php-fpm php73-php-mysql
[root@centos7 ~]# rpm -ql php73-php-fpm
/etc/logrotate.d/php73-php-fpm /etc/opt/remi/php73/php-fpm.conf /etc/opt/remi/php73/php-fpm.d /etc/opt/remi/php73/php-fpm.d/www.conf /etc/opt/remi/php73/sysconfig/php-fpm /etc/systemd/system/php73-php-fpm.service.d /opt/remi/php73/root/usr/sbin/php-fpm /opt/remi/php73/root/usr/share/doc/php73-php-fpm-7.3.22 /opt/remi/php73/root/usr/share/doc/php73-php-fpm-7.3.22/php-fpm.conf.default /opt/remi/php73/root/usr/share/doc/php73-php-fpm-7.3.22/www.conf.default /opt/remi/php73/root/usr/share/fpm /opt/remi/php73/root/usr/share/fpm/status.html /opt/remi/php73/root/usr/share/licenses/php73-php-fpm-7.3.22 /opt/remi/php73/root/usr/share/licenses/php73-php-fpm-7.3.22/fpm_LICENSE /opt/remi/php73/root/usr/share/man/man8/php-fpm.8.gz /usr/lib/systemd/system/php73-php-fpm.service /var/opt/remi/php73/lib/php/opcache /var/opt/remi/php73/lib/php/session /var/opt/remi/php73/lib/php/wsdlcache /var/opt/remi/php73/log/php-fpm /var/opt/remi/php73/run/php-fpm

24、修改php73-php-fpm配置文件

[root@centos7 ~]# vim /etc/opt/remi/php73/php-fpm.d/www.conf
user = nginx group = nginx listen = 9000 ;listen.allowed_clients = 127.0.0.1

25、创建nginx用户和组,nginx用户uid和gid必须和nginx服务器的一致

[root@centos7 ~]# groupadd -g 996 nginx 
[root@centos7 ~]# useradd -u 998 -g 996 nginx

26、重启php73-php-fpm服务,发现9000端口起来了

[root@centos7 ~]# systemctl restart php73-php-fpm
[root@centos7 ~]# ss -ntl State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:22 *:* LISTEN 0 128 [::]:9000 [::]:* LISTEN 0 128 [::]:22 [::]:* [root@centos7 ~]# 

27、准备wordpress的php程序目录

[root@centos7 php]# tar xvf wordpress-5.2.tar.gz -C php/
[root@centos7 php]# mv wordpress/* .
[root@centos7 php]# ll
total 196
-rw-r--r--  1 nobody 65534   420 Dec  1  2017 index.php
-rw-r--r--  1 nobody 65534 19935 Jan  2  2019 license.txt
-rw-r--r--  1 nobody 65534  7447 Apr  9  2019 readme.html
drwxr-xr-x  2 nobody 65534     6 Sep 22 23:37 wordpress
-rw-r--r--  1 nobody 65534  6919 Jan 12  2019 wp-activate.php
drwxr-xr-x  9 nobody 65534  4096 May  8  2019 wp-admin
-rw-r--r--  1 nobody 65534   369 Dec  1  2017 wp-blog-header.php
-rw-r--r--  1 nobody 65534  2283 Jan 21  2019 wp-comments-post.php
-rw-r--r--  1 nobody 65534  2898 Jan  8  2019 wp-config-sample.php
drwxr-xr-x  4 nobody 65534    52 May  8  2019 wp-content
-rw-r--r--  1 nobody 65534  3847 Jan  9  2019 wp-cron.php
drwxr-xr-x 20 nobody 65534  8192 May  8  2019 wp-includes
-rw-r--r--  1 nobody 65534  2502 Jan 16  2019 wp-links-opml.php
-rw-r--r--  1 nobody 65534  3306 Dec  1  2017 wp-load.php
-rw-r--r--  1 nobody 65534 39574 Apr 16  2019 wp-login.php
-rw-r--r--  1 nobody 65534  8403 Dec  1  2017 wp-mail.php
-rw-r--r--  1 nobody 65534 18962 Mar 29  2019 wp-settings.php
-rw-r--r--  1 nobody 65534 31085 Jan 17  2019 wp-signup.php
-rw-r--r--  1 nobody 65534  4764 Dec  1  2017 wp-trackback.php
-rw-r--r--  1 nobody 65534  3068 Aug 17  2018 xmlrpc.php
[root@centos7 php]# chown -R nginx.nginx .
[root@centos7 php]# ll
total 196
-rw-r--r--  1 nginx nginx   420 Dec  1  2017 index.php
-rw-r--r--  1 nginx nginx 19935 Jan  2  2019 license.txt
-rw-r--r--  1 nginx nginx  7447 Apr  9  2019 readme.html
drwxr-xr-x  2 nginx nginx     6 Sep 22 23:37 wordpress
-rw-r--r--  1 nginx nginx  6919 Jan 12  2019 wp-activate.php
drwxr-xr-x  9 nginx nginx  4096 May  8  2019 wp-admin
-rw-r--r--  1 nginx nginx   369 Dec  1  2017 wp-blog-header.php
-rw-r--r--  1 nginx nginx  2283 Jan 21  2019 wp-comments-post.php
-rw-r--r--  1 nginx nginx  2898 Jan  8  2019 wp-config-sample.php
drwxr-xr-x  4 nginx nginx    52 May  8  2019 wp-content
-rw-r--r--  1 nginx nginx  3847 Jan  9  2019 wp-cron.php
drwxr-xr-x 20 nginx nginx  8192 May  8  2019 wp-includes
-rw-r--r--  1 nginx nginx  2502 Jan 16  2019 wp-links-opml.php
-rw-r--r--  1 nginx nginx  3306 Dec  1  2017 wp-load.php
-rw-r--r--  1 nginx nginx 39574 Apr 16  2019 wp-login.php
-rw-r--r--  1 nginx nginx  8403 Dec  1  2017 wp-mail.php
-rw-r--r--  1 nginx nginx 18962 Mar 29  2019 wp-settings.php
-rw-r--r--  1 nginx nginx 31085 Jan 17  2019 wp-signup.php
-rw-r--r--  1 nginx nginx  4764 Dec  1  2017 wp-trackback.php
-rw-r--r--  1 nginx nginx  3068 Aug 17  2018 xmlrpc.php
[root@centos7 php]# ls
index.php    readme.html  wp-activate.php  wp-blog-header.php    wp-config-sample.php  wp-cron.php  wp-links-opml.php  wp-login.php  wp-settings.php  wp-trackback.php
license.txt  wordpress    wp-admin         wp-comments-post.php  wp-content            wp-includes  wp-load.php        wp-mail.php   wp-signup.php    xmlrpc.php

28、修改wordpress配置文件

[root@centos7 php]# mv wp-config-sample.php wp-config.php 
[root@centos7 php]# ls
index.php    readme.html  wp-activate.php  wp-blog-header.php    wp-config.php  wp-cron.php  wp-links-opml.php  wp-login.php  wp-settings.php  wp-trackback.php license.txt wordpress wp-admin wp-comments-post.php wp-content wp-includes wp-load.php wp-mail.php wp-signup.php xmlrpc.php [root@centos7 php]# vim wp-config.php define( 'DB_NAME', 'wordpress' ); /** MySQL database username */ define( 'DB_USER', 'wordpress' ); /** MySQL database password */ define( 'DB_PASSWORD', 'centos' ); /** MySQL hostname */ define( 'DB_HOST', '192.168.37.101' );

29、准备nginx静态页面文件,在nginx服务器上操作

tar -xvf wordpress-5.2.tar.gz -C /usr/share/nginx/html/
[root@centos7 ~]# ls /usr/share/nginx/html/wordpress/ index.php wp-admin wp-content wp-load.php wp-signup.php license.txt wp-blog-header.php wp-cron.php wp-login.php wp-trackback.php readme.html wp-comments-post.php wp-includes wp-mail.php xmlrpc.php wp-activate.php wp-config-sample.php wp-links-opml.php wp-settings.php

30、修改nginx服务器主配置文件

[root@centos7 ~]# vim /etc/nginx/nginx.conf
   server {
        listen       80 default_server; listen [::]:80 default_server; server_name _; root /usr/share/nginx/html; index index.php index.html # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location ~* \.php$ { root /data/php; #$document_root 调用root目录 fastcgi_pass 192.168.37.103:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params;

30、重启nginx服务

[root@centos7 ~]# systemctl restart nginx

31、浏览器测试

 

 

 

 

 

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM