IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 手把手教你Nginx 配置 HTTPS 完整过程 -> 正文阅读

[网络协议]手把手教你Nginx 配置 HTTPS 完整过程

相信大家在现有项目里都会通过https访问,我们今天得教程就是通过配置nginx实现https访问。

nginx配置HTTPS前置条件

服务器上已经安装nginx服务,已经具备http访问;
nginx服务器是否已经安装ssl模块得支持;
是否已经拥有ssl证书,如果没有可以去阿里云或者腾讯云免费申请;

1,证书申请

证书申请前往阿里云SSL证书申请,选择免费证书申请即可

在这里插入图片描述

2 nginx SSL模块是否支持

查看nginx是否安装http_ssl_module模块
./nginx -V

在这里插入图片描述
如果看到我上图标记得 configure arguments: --with-http_ssl_module, 则已安装(可以直接跳过nginx安装ssl支持步骤,进入 nginx.conf 配置)。

3,nginx安装

3.1 nginx官网地址

下载地址:http://nginx.org/en/download.html
这里下载nginx-1.18.0稳定版tar.gz

3.2 下载tar包到服务器目录

cd /home/somnus
wget http://nginx.org/download/nginx-1.18.0.tar.gz

3.3 解压安装包

tar -zxvf nginx-1.18.0.tar.gz

3.4 配置ssl模块

cd nginx-1.18.0
./configure --prefix=/usr/local/nginx --with-http_ssl_module

我们只需要执行以上命令即可,由于我服务器上还有其他模块依赖

3.5 接下来执行命令编译

使用 make 命令编译(使用make install会重新安装nginx),此时当前目录会出现 objs 文件夹。用新的 nginx 文件覆盖当前的 nginx 文件。
在这里插入图片描述

3.6 命令拷贝复制

cp ./objs/nginx /usr/local/nginx/sbin/

3.7 再次查看安装的模块(configure arguments: --with-http_ssl_module说明ssl模块已安装)。

./nginx -V
nginx version: nginx/1.18.0
…
configure arguments: –with-http_ssl_module

4. ssl 证书部署

下载申请好的 ssl 证书文件压缩包到本地并解压(这里是用的 pem 与 key 文件,文件名可以更改)。
在 nginx 目录新建 cert 文件夹存放证书文件。

 cd /usr/local/nginx
 mkdir cert

将我们申请得这两个文件上传至服务器的 cert 目录里。
在这里插入图片描述

4.1. nginx.conf 配置

编辑 /usr/local/nginx/conf/nginx.conf 配置文件:

配置 https server。
注释掉之前的 http server 配置,新增 https server:

 server {
        listen       443 ssl;
        server_name somnus.test.com;

        ssl_certificate      ../cert/somnus.test.com.pem;
        ssl_certificate_key  ../cert/somnus.test.com.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
	ssl_protocols TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
......
}

4.2 将 http 重定向 https

server {
    listen 80;
    server_name somnus.test.com;
    #将请求转成https
    rewrite ^(.*)$ https://$host$1 permanent;
}

4.5 重启 nginx

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

如果 80 端口被占用,可以通过kill命令来进行结束进程:

5 查看端口使用

 netstat -lntp

执行看到以下结果就说明我们成功了

[root@iZi5u1azluu464tfbesf3aZ conf]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      3322/nginx: master  
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2310/sshd                  
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      3322/nginx: master  

5.1 结束nginx端口进程

5.1 查看nginx 进程命令

ps aux | grep nginx

在这里插入图片描述

5.2 执行结束命令

kill -9 3322

5.1 重启 nginx :

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

???????以上就是我们今天的教程,如果本文对你有所帮助,欢迎关注点赞,分享给您身边的朋友。您的鼓励就是对我的最大动力。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-10-27 13:09:19  更:2021-10-27 13:10:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年7日历 -2024/7/3 11:14:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码