一、安装依赖包
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
二、下载并解压安装包
cd /usr/local
mkdir nginx
cd nginx
wget http://nginx.org/download/nginx-1.20.2.tar.gz
tar -xvf nginx-1.20.2.tar.gz
三、安装Nginx
//进入nginx目录
cd /usr/local/nginx/nginx-1.20.2
//安装nginx指定目录
./configure --prefix=/usr/local/nginx
//执行命令 考虑到后续安装ssl证书 添加两个模块
./configure --with-http_stub_status_module --with-http_ssl_module
//执行make 和 make install命令
make && make install
四、启动Nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
五、重新启动Nginx
/usr/local/nginx/sbin/nginx -s reload
六、其他Nginx命令
停止Nginx
/usr/local/nginx/sbin/nginx -s stop
七、开发端口
开放端口(permanent参数表示永久生效,重启服务器和重启防火墙都生效)
firewall-cmd --zone=public --add-port=80/tcp --permanent
重启防火墙
firewall-cmd --reload
八、配置环境
打开配置文件,
vim /etc/profile
在最文件下面添加以下代码(nginx安装目录)
PATH=$PATH:/usr/local/nginx/sbin
更新配置文件
source /etc/profile
最后测试
nginx -t
这些就表示配置文件正常。
自此安装完成
创建脚本文件
vi /usr/lib/systemd/system/nginx.service
进入文件中粘贴以下内容
[Unit]
Description=nginx - web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
设置nginx.service的权限(读写等权限,777为最高权限)
chmod 755 /usr/lib/systemd/system/nginx.service
重新加载系统服务
systemctl daemon-reload
设置nginx.service服务开机自启
systemctl enable nginx.service
启动服务(这里就是为什么第一步要停止服务的原因,因为服务已启动不能再次启动,如果之前没有停止服务就需要先关闭,使用杀死进程命令操作,kill -9 nginx的pid)
systemctl start nginx.service
nginx服务相关操作部分命令
systemctl start nginx.service // 启动nginx服务
systemctl stop nginx.service // 停止nginx服务
systemctl restart nginx.service // 重启nginx服务
systemctl reload nginx.service // 重载nginx服务 (推荐使用)
systemctl status nginx.service // 查看nginx状态
systemctl enable nginx.service // 设置为开机启动nginx服务
七、查看nginx配置中端口监听情况
ps aux | grep nginx