【彻底卸载nginx并部署nginx1.22.1+ssl模块等】

文章目录

  • 前言
  • 一、检查Nginx
    • [1.1 查看是否安装ssl模块](#1.1 查看是否安装ssl模块)
  • 二、彻底卸载Nginx
    • [2.1 查看Nginx进程](#2.1 查看Nginx进程)
    • [2.2 关闭Nginx服务](#2.2 关闭Nginx服务)
    • [2.3 查找Nginx安装目录](#2.3 查找Nginx安装目录)
    • [2.4 彻底删除Nginx配置文件](#2.4 彻底删除Nginx配置文件)
    • [2.5 若之前Nginx设置开机自启,按下面方法删除](#2.5 若之前Nginx设置开机自启,按下面方法删除)
    • [2.6 使用yum方法彻底删除Nginx](#2.6 使用yum方法彻底删除Nginx)
  • 三、部署Nginx1.22.1并配置ssl模块
    • [3.1 下载Nginx安装包](#3.1 下载Nginx安装包)
    • [3.2 解压安装包](#3.2 解压安装包)
    • [3.3 安装相关依赖](#3.3 安装相关依赖)
    • [3.4 配置相关模块](#3.4 配置相关模块)
    • [3.5 编译安装](#3.5 编译安装)
    • [3.6 添加环境变量](#3.6 添加环境变量)
    • [3.7 查看Nginx版本](#3.7 查看Nginx版本)
    • [3.8 添加nginx用户](#3.8 添加nginx用户)
    • [3.9 配置Nginx服务](#3.9 配置Nginx服务)
    • [3.10 启动Nginx服务](#3.10 启动Nginx服务)

前言

我之前部署的Nginx没有安装ssl,在网上试了很多方法,一直安装不了,索性直接卸载干净,从新安装版本高一点的Nginx并配置ssl模块等。


提示:以下是本篇文章正文内容,下面案例可供参考

一、检查Nginx

1.1 查看是否安装ssl模块

在nginx的安装目录下的/usr/local/nginx/sbin/nginx -V命令,注意是大写V,查看配置是否包含"-with-http_ssl_module",包含则表示已经配置好SSL,如果不含,需要安装SSL模块。

c 复制代码
/usr/local/nginx/sbin/nginx -V

configure arguments后面为空的,没有ssl模块

二、彻底卸载Nginx

2.1 查看Nginx进程

C 复制代码
ps -ef | grep nginx

2.2 关闭Nginx服务

C 复制代码
/usr/local/nginx/sbin/nginx -s stop

2.3 查找Nginx安装目录

C 复制代码
find  /  -name nginx 

2.4 彻底删除Nginx配置文件

C 复制代码
rm-rf/usr/local/nginx
rm-rf/usr/local/nginx/sbin/nginx
rm-rf/usr/src/nginx-1.12.2/objs/nginx

2.5 若之前Nginx设置开机自启,按下面方法删除

C 复制代码
chkconfig nginx off
rm -rf /etc/init.d/nginx

2.6 使用yum方法彻底删除Nginx

C 复制代码
yum remove nginx

三、部署Nginx1.22.1并配置ssl模块

3.1 下载Nginx安装包

代码如下(示例):

c 复制代码
#创建文件
mkdir -p /home/app
#进入文件
cd /home/app
#使用wget下载安装包
wget https://nginx.org/download/nginx-1.22.1.tar.gz

3.2 解压安装包

代码如下(示例):

c 复制代码
tar -zxvf  nginx-1.22.1.tar.gz 

3.3 安装相关依赖

代码如下(示例):

c 复制代码
yum -y install openssl openssl-devel make zlib zlib-devel gcc gcc-c++ libtool pcre pcre-devel pam pam-devel

3.4 配置相关模块

代码如下(示例):

JavaScript 复制代码
#进入nginx文件
cd /home/app/nginx-1.22.1
#添加相关模块
./configure \
--prefix=/usr/local/nginx \
--user=nginx --group=nginx \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-pcre \
--with-stream \
--with-stream_ssl_module \
--with-stream_realip_module

编译成功后目录下生成了objs这个目录

3.5 编译安装

代码如下(示例):

c 复制代码
make && make install

3.6 添加环境变量

代码如下(示例):

c 复制代码
#添加环境变量
echo 'export PATH=$PATH:/usr/local/nginx/sbin/' >> /etc/profile
#生效
source /etc/profile

3.7 查看Nginx版本

代码如下(示例):

c 复制代码
/usr/local/nginx/sbin/nginx -V

3.8 添加nginx用户

代码如下(示例):

c 复制代码
#进入文件
cd /usr/local/nginx
#添加nginx用户
useradd nginx  -s /sbin/nologin

3.9 配置Nginx服务

代码如下(示例):

c 复制代码
cat > /lib/systemd/system/nginx.service << EOF
[Unit]
Description="nginx service"
After=network-online.target

[Service]
Type=forking
WorkingDirectory=/usr/local/nginx/sbin
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
Restart=always
RestartSec=3s
LimitNOFILE=204800

[Install]
WantedBy=multi-user.target
EOF

配置文件解析

c 复制代码
Description:										描述服务
After=network.target:								表示服务在网络可用后启动。
[Service]											服务运行参数的设置
Type=forking										是后台运行的形式
ExecStart=/usr/local/nginx/sbin/nginx 				为服务的具体运行命令
ExecReload=/usr/local/nginx/sbin/nginx -s reload 	为重启命令
ExecStop=/usr/local/nginx/sbin/nginx -s stop 		为停止命令
Restart=always										表示在服务挂掉时无论其返回值都重启(如果设置为on-failure则只在服务返回值非0时重启)
RestartSec=3s 										表示服务挂掉后3s后尝试重启。
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
WantedBy=multi-user.target 指的是:sshd 所在的 Target 是multi-user.target。
这个设置非常重要,因为执行systemctl enable sshd.service命令时,sshd.service的一个符号链接,
就会放在/etc/systemd/system目录下面的multi-user.target.wants子目录之中。Systemd 有默认的启动 Target。
systemctl get-default 所以开机自启完全依赖于它

3.10 启动Nginx服务

代码如下(示例):

c 复制代码
#启动并开机自启
systemctl enable nginx.service --now
# 查看nginx运行情况
systemctl status nginx.service 
相关推荐
七夜zippoe2 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
Fcy6483 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满3 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠4 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey9034 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
珠海西格电力科技5 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀5 小时前
Linux环境变量
linux·运维·服务器
zzzsde5 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
聆风吟º7 小时前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
NPE~7 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化