——基于LNMP的网站建设

两年前,我写过一篇名为《从零开始基于CentOS7配置PHP开发环境》的小文,现在新冠期间换个名字,将其整理以存之。

四、安装NGINX
  1. 安装Nginx源

$sudo yum install epel-release -y

  1. 安装Nginx服务

$sudo yum install nginx -y

  1. 配置Nginx服务

为了服务能正常运行及个人习惯,我们还需要对nginx服务进行一些必要的配置,主要是修改主目录及对PHP的支持。

$sudo  vi /etc/nginx/nginx.conf

先修改http头部的index值

# Load modular configuration files from the /etc/nginx/conf.d directory. See- http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
# index   index.php index.html index.htm;

按动方向键,先将光标移至index后面,再按[i]键,进入插入模式,在index.html前键入index.php,然后依次按[Esc][:][w][q]键后回车。

vi是Linux系统中非常强大的一个工具了,它的使用方法完全可以另起一篇文章,本文只是使用了最简单的功能,常用操作如下,后文不再详述。
打开文档 vi [路径]
编辑模式 i
命令模式 Esc:
保存退出 wq
直接退出 q!

接下来修改server字段中的listen端口(现在网络运营商大规模封80,如果是自建服务器建议修改默认端口1025- 65535之间)和root主目录及index索引。

server {

        listen       80;
        listen       [::]:80 default_server;
        server_name  localhost;
        root         /var/www/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
       
        location / {
        #省略中间N多代码……
        }        

       }

再调整 server中location /{}的参数 :

        location / {
        root   /var/www/html;
        index  index.php index.html index.htm;
        }

        # redirect server error pages to the static page /40x.html
        #
        error_page 404 /404.html;
            location = /40x.html {
        }

然后调整 server中location ~\.php${}的参数

location ~ \.php$ {
root 	/var/www/html;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
include        fastcgi_params;
}

下面我们要在服务器上开放Http的端口(如果你修改了端口号,请将下面的80改为你自定义的端口号),并重启防火墙。

$sudo systemctl restart  firewalld

$sudo firewall-cmd –zone=public –add-port=80/tcp –permanent

$sudo firewall-cmd –zone=public –add-port=443/tcp –permanent

$sudo firewall-cmd –reload

  1. 配置php-fpm服务

这里需要将php-fpm的运行用户信息改为nginx

$sudo vi /etc/php-fpm.d/www.conf

; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
  1. 启动MySQL服务

$sudo systemctl start mysqld

  1. 启动php-fpm服务

$sudo systemctl start php-fpm

  1. 启动Nginx服务

$sudo systemctl start nginx

  1. 设置MySQL服务自启动项

$sudo systemctl enable mysqld

  1. 设置nginx服务自启动项

$sudo systemctl enable nginx

  1. 设置php-fpm服务自启动项

$sudo systemctl enable php-fpm

  1. 重载服务配置

$sudo systemctl daemon-reload

  1. 查看服务状态

$sudo systemctl | grep running

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注