Centos 7编译安装Nginx

Centos 7和Centos 8编译安装Nginx

    • 第一步:防火墙开启80端口或关闭防火墙
    • 第二步:下载Nginx的压缩包
    • 第三步:安装Nginx所需要的环境
    • 第四步:解压Nginx的压缩包
    • 第五步:配置Nginx
    • 第六步:编译安装Nginx
    • 第七步:启动Nginx

第一步:防火墙开启80端口或关闭防火墙

开启防火墙的80端口(防火墙已关闭的可以跳过这一步
使用firewall-cmd开启防火墙80端口,指令如下所示

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

开启后需要更新防火墙规则才能生效,指令如下所示

firewall-cmd --reload

其中命令参数含义为:

zone 作用域
add-port 添加端口
permanent 永久生效
reload 重新加载

关闭防火墙(开启了防火墙的80端口,不用执行关闭防火墙
使用systemctl命令关闭防火墙,指令如下所示

systemctl stop firewalld.service

其中stop是停止/关闭的意思。

第二步:下载Nginx的压缩包

使用wget命令下载Nginx-1.17.6.tar.gz的压缩文件,指令如下所示

wget http://nginx.org/download/nginx-1.17.6.tar.gz -P /usr/local/

如果对版本有需求请根据自己的需求下载自己需要的版本,这是Nginx官网的下载地址–>Nginx官网

第三步:安装Nginx所需要的环境

使用yum命令下载Nginx所需的环境,指令如下所示

yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

Nginx安装的环境有:

gcc 开源的编译器
PCRE PCRE是一个Perl库,包括 perl 兼容的正则表达式库
zlib zlib库提供了很多种压缩和解压缩的方式
openssl 支持SSL协议上传输HTTP

第四步:解压Nginx的压缩包

使用tar命令解压tar.gz的压缩包,指令如下所示

cd /usr/local
tar -zxvf nginx-1.17.6.tar.gz

其中zxvf参数的含义为:

z 通过gzip压缩或解压缩
x 表示解压
v 显示解压过程
f 指定解压文件

第五步:配置Nginx

使用.configure命令配置Nginx,指令如下所示

cd /usr/local/nginx-1.17.6/
./configure --prefix=/usr/local/nginx

其中–prefix选项是配置安装的路径

第六步:编译安装Nginx

使用make进行编译,使用make install进行安装,指令如下所示

make && make install

其中&&为逻辑符号,如果命令make执行失败则不会执行make install,如果&&符号前面的make命令没有错误,则会继续执行符号后面的make install命令。

第七步:启动Nginx

启动nginx

/usr/local/nginx/sbin/nginx

在本地浏览器输入nginx服务器的ip地址,成功效果如下所示
Centos 7编译安装Nginx_第1张图片

其他命令
重新载入nginx配置文件

/usr/local/nginx/sbin/nginx  -s reload

重启nginx

/usr/local/nginx/sbin/nginx  -s reopen

停止nginx

/usr/local/nginx/sbin/nginx  -s stop

如果觉得进入文件夹里管理nginx很麻烦想用systemctl的方式管理nginx,指令如下所示
在system的文件夹里创建一个nginx.service

vim /usr/lib/systemd/system/nginx.service

#写入内容如下

[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID

[Install]
WantedBy=multi-user.target

写入完成后按Esc然后按Shift+:然后再输入wq回车即可保存并退出,如下图所示
Centos 7编译安装Nginx_第2张图片

设置开机启动

systemctl enable nginx.service

关闭之前启动的Nginx

pkill -9 nginx

重新加载nginx配置文件

systemctl daemon-reload

使用systemctl启动nginx服务

systemctl start nginx

查看nginx服务的运行状态

systemctl status  nginx

显示running表示开启成功,如下图所示
Centos 7编译安装Nginx_第3张图片

你可能感兴趣的