一、下载和安装Nginx服务
# 安装wget软件
[root@localhost home]# yum install wget
# 安装Nginx所需要的依赖
[root@localhost home]# yum install -y gcc-c++ zlib zlib-devel openssl openssl-devel pcre pcre-devel
# 下载Nginx安装包
[root@localhost home]# wget -c http://nginx.org/download/nginx-1.26.0.tar.gz
# 解压Nginx安装包
[root@localhost home]# tar -zxvf nginx-1.26.0.tar.gz
# 进入解压后的Nginx目录:
[root@localhost home]# cd /nginx-1.26.0
# 执行配置: 添加http和https模块
# --prefix为指定安装路径,不指定默认安装到/usr/local/nginx目录
[root@localhost nginx-1.26.0]# ./configure --prefix=/opt/nginx --with-http_stub_status_module --with-http_ssl_module
# 对Nginx编译和安装
[root@localhost nginx-1.26.0]# make & make install
二、修改Nginx配置和打包以便后续解压直接使用,省去打包编译。
1、修改nginx.conf文件:vi /opt/nginx/conf/nginx.conf。
2、上传https证书到/opt/nginx/conf/cert
3、编写Nginx服务管理脚本并在存放到conf目录
# 编写服务管理脚本,存在到nginx目录,后续可以直接使用,省去每次编写
[root@localhost nginx]# vi /opt/nginx/conf/nginx.service
[Unit]
Description= Nginx-1.26.0
After=network.target
[Service]
Type=forking
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/opt/nginx/sbin/nginx -s reload
ExecStop=/opt/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
4、打压缩包,方便后续重装直接使用,省去编译和配置等工作,直接解压使用。
# 进入到opt目录
[root@localhost conf]# cd /opt/
# 执行打包命令
[root@localhost opt]# tar -czvf nginx-1.26.0-build.tar.gz nginx
5、验证服务是否可以正常启动
# 进入Nginx启动目录
[root@localhost opt]# cd /opt/nginx/sbin/
# 启动Nginx服务【如更改的目录,可使用./nginx -p /opt/usrpath】
[root@localhost sbin]# ./nginx
# 重启Nginx服务
[root@localhost sbin]# ./nginx -s reload
# 关闭Nginx服务
[root@localhost sbin]# ./nginx -s stop
# 指定配置文件启动
[root@localhost sbin]# ./nginx -c /opt/nginx/conf/nginx.conf
# 查看Nginx是否启动成功
[root@localhost sbin]# ps -ef | grep nginx
三、配置Nginx服务管理和开机启动
# 关闭Nginx服务,再配置服务管理
[root@localhost sbin]# ./nginx -s stop
# 将开始编写的nginx.service文件复制到服务管理目录
[root@localhost sbin]# cp /opt/nginx/conf/nginx.service /etc/systemd/system/
# 启动Nginx服务
[root@localhost sbin]# systemctl start nginx
# 查看Nginx服务状态,显示active(running)即表示成功
[root@localhost sbin]# systemctl status nginx
# 设置Nginx开机启动
[root@localhost sbin]# systemctl enable nginx
# 开放Nginx服务80端口
[root@localhost sbin]# firewall-cmd --zone=public --add-port=80/tcp --permanent
# 重启防火墙
[root@localhost sbin]# firewall-cmd --reload
# 查看开放端口
[root@localhost sbin]# firewall-cmd --list-ports