一 安装nginx依赖
# 安装gcc
yum install gcc-c++
# 安装PCRE
yum install -y pcre pcre-devel
# 安装zlib
yum install -y zlib zlib-devel
# 安装Open SSL
yum install -y openssl openssl-devel
# 安装全部
yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
# 查看安装结果
rpm -qa gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
二 下载并解压nginx安装包
# 下载nginx
cd /usr/local
wget https://nginx.org/download/nginx-1.24.0.tar.gz
# 解压nginx安装包
tar -zxvf nginx-1.24.0.tar.gz
# 删除安装包
rm -rf nginx-1.24.0.tar.gz
三 安装nginx
# 进入nginx目录
cd /usr/local/nginx
# 进入目录
cd nginx-1.24.0
# 编译 执行命令 考虑到后续安装ssl证书 添加两个模块 如不需要直接执行./configure即可
./configure --with-http_stub_status_module --with-http_ssl_module
# 执行make命令(要是执行不成功请检查最开始安装的四个依赖有没有安装成功)
make
#执行make install命令
make install
#或者一起
make && make install
# 清除
make clean
四 配置环境变量
vi /etc/profile
export PATH=$PATH:/usr/local/nginx/sbin
source /etc/profile
nginx -v
五 启动
cd /usr/local/nginx/sbin
# 默认配置文件启动
./nginx
# 指定配置文件启动
./nginx -c /usr/local/nginx/conf/nginx.conf
六 浏览器访问
localhost:80
七 停止重启nginx
cd /usr/local/nginx/sbin
# 停止指令
./nginx -s stop
# 或
./nginx -s quit
# 重载配置
./nginx -s reload
# 查看nginx进程
ps -ef|grep nginx
八 设置开机自启动nginx
- 方法一
#编辑
vim /etc/rc.local
#最底部增加这一行
/usr/local/nginx/sbin/nginx
#授权可执行
chmod +x /etc/rc.d/rc.local
- 方法二
# 新增自定义一个 nginx.service 文件
vi /usr/lib/systemd/system/nginx.service
# 文件中添加如下内容
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
# 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
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[Unit] #服务的说明
Description #描述服务
After #描述服务类别
[Service] #服务运行参数的设置
Type=forking #是后台运行的形式
ExecStart #为服务的具体运行命令
ExecReload #为重启命令
ExecStop #为停止命令
PrivateTmp=True #表示给服务分配独立的临时空间
#注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install] #运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
- systemctl操作服务命令
systemctl start nginx.service #启动nginx服务
systemctl stop nginx.service #停止nginx服务
systemctl enable nginx.service #设置开机自启动
systemctl disable nginx.service #停止开机自启动
systemctl status nginx.service #查看服务当前状态
systemctl restart nginx.service #重新启动服务
systemctl list-units --type=service #查看所有已启动的服务
九 防火墙设置
#不过,关闭防火墙会导致服务器有一定风险,所以建议是单独开放服务端口:
firewall-cmd --zone=public --add-port=8089/tcp --permanent
#查询端口号8089 是否开启:
firewall-cmd --query-port=8089/tcp
#重启防火墙:
firewall-cmd --reload
# 查看firewall防火墙状态
systemctl status firewalld
# 查看firewall防火墙开放端口
firewall-cmd --list-ports
#禁止firewall开机启动
systemctl disable firewalld.service
十 卸载nginx
- 停止nginx
# 停止Nginx软件
/usr/local/nginx/sbin/nginx -s stop
# 或者杀死nginx进程
ps -ef | grep nginx
kill -9 11000
查找根下所有名字包括nginx的文件
find / -name nginx
删除所有文件
rm -rf /usr/local/sbin/nginx /usr/local/nginx /var/spool/mail/nginx
- 其他设置,如果设置了Nginx开机自启动的话,可能还需要下面两步
chkconfig nginx off
rm -rf /etc/init.d/nginx