Linux日记本_07:Nginx安装SSL证书并配置http转https

本文涉及的产品
.cn 域名,1个 12个月
简介: https上次写过一篇Linux下Nginx的搭建文章,这篇是补充SSL证书的安装与http请求转换成https请求.SSL证书是什么?ssl证书当你点击证书的时候已经给了很明确的说明1.保证远程计算机的身份2.向远程计算机证明你的身份证书信息如果你很熟悉Nginx的话,那么在Nginx下安装SSL证书将会是一件很简单的事情.当然证书的安装方式有很多种,需要根据系统和所使用的软件不同来下载相关的资源,这里我们就不在赘述,我们只关注Nginx下相关的就OK了。
img_56949053298a4c91284955794553a894.png
https
上次写过一篇Linux下Nginx的搭建文章,这篇是补充SSL证书的安装与http请求转换成https请求.

SSL证书是什么?

img_c9063ed6f453a7d66eaedb08c5d6ae71.png
ssl证书

当你点击证书的时候已经给了很明确的说明

1.保证远程计算机的身份
2.向远程计算机证明你的身份
img_5e152fd6b46ea8e0a4281514d8276466.png
证书信息

如果你很熟悉Nginx的话,那么在Nginx下安装SSL证书将会是一件很简单的事情.当然证书的安装方式有很多种,需要根据系统和所使用的软件不同来下载相关的资源,这里我们就不在赘述,我们只关注Nginx下相关的就OK了。
http默认请求是不是走https的,所以当你没有配置所有请求都走https的时候,你的域名通过http和https都是可以访问的,但是这样就没有任何意义了,所以我们一起来配置Nginx吧

nginx 配置

如果您已经有域名以及域名对应的SSL证书存放在/data/release/nginx/目录下,请将下面配置内容中的

  • [1] 替换成您自己的域名
  • [2-1] 替换成SSL证书的crt文件名
  • [2-2] 替换成SSL证书的key文件名
upstream app_weapp {
    server localhost:5757;
    keepalive 8;
}

#http请求转为 https请求
server {
    listen      80;
    server_name [1]; 

    rewrite ^(.*)$ https://$server_name$1 permanent;
}

#https请求
server {
    listen      443;
    server_name [1];

    ssl on;

    ssl_certificate           /data/release/nginx/[2-1];
    ssl_certificate_key       /data/release/nginx/[2-2];
    ssl_session_timeout       5m;
    ssl_protocols             TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers               ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA;
    ssl_session_cache         shared:SSL:50m;
    ssl_prefer_server_ciphers on;

    # tomcat默认端口是8080,nginx 将请求转发给tomcat处理
    location / {
        proxy_pass   http://127.0.0.1:8080;
        proxy_redirect  off;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

运行服务

输入命令,启动Nginx服务。
nginx -s reload

配置后的请求查看

F12 打开开发者模式,查看信息.

可以看到,已经走了我们配置的443端口

img_a602f455c34437e4a76b3c92bdf38b1c.png
请求信息
目录
相关文章
|
5天前
|
安全 应用服务中间件 网络安全
简单比较 http https http2,我们要如何把http升级为https
【9月更文挑战第13天】本文对比了HTTP、HTTPS和HTTP/2的特点与适用场景。HTTP以明文传输,适合低安全要求的环境;HTTPS通过SSL/TLS加密,适用于电子商务等安全要求高的场景;HTTP/2采用二进制格式和多路复用,适合高性能Web应用。文章还详细介绍了将HTTP升级为HTTPS的步骤,包括申请和安装SSL证书、配置Web服务器、重定向HTTP流量到HTTPS以及测试HTTPS功能。升级到HTTPS可提高数据安全性和用户信任度。
35 13
|
6天前
|
安全 网络安全 数据安全/隐私保护
HTTP与HTTPS协议区别及应用场景
在互联网高速发展的今天,HTTP与HTTPS作为数据传输的基石,作用至关重要。HTTP允许客户端与服务器间传输超文本文档,但其数据传输过程未加密,存在安全隐患;HTTPS则在此基础上加入了SSL/TLS协议,实现了数据加密传输,增强了安全性,广泛应用于电子商务、网上银行、政府网站及社交媒体平台等涉及敏感信息传输的领域,有效保护了用户隐私和数据安全。随着网络安全意识提升,HTTPS正逐渐成为主流。
|
22天前
|
算法 Java 测试技术
java 访问ingress https报错javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
java 访问ingress https报错javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
|
24天前
|
缓存 应用服务中间件 nginx
安装nginx-http-flv-module模块
本文介绍如何为Nginx安装`nginx-http-flv-module`模块。此模块基于`nginx-rtmp-module`二次开发,不仅具备原模块的所有功能,还支持HTTP-FLV播放、GOP缓存、虚拟主机等功能。安装步骤包括:确认Nginx版本、下载相应版本的Nginx与模块源码、重新编译Nginx并加入新模块、验证模块安装成功。特别注意,此模块已包含`nginx-rtmp-module`功能,无需重复编译安装。
66 1
|
26天前
|
安全 网络安全 Windows
【Azure App Service】遇见az命令访问HTTPS App Service 时遇见SSL证书问题,暂时跳过证书检查的办法
【Azure App Service】遇见az命令访问HTTPS App Service 时遇见SSL证书问题,暂时跳过证书检查的办法
【Azure App Service】遇见az命令访问HTTPS App Service 时遇见SSL证书问题,暂时跳过证书检查的办法
|
27天前
|
Linux Python
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
|
28天前
|
JavaScript 前端开发 Java
【Azure 环境】各种语言版本或命令,发送HTTP/HTTPS的请求合集
【Azure 环境】各种语言版本或命令,发送HTTP/HTTPS的请求合集
|
Ubuntu Linux 网络安全
[Apache,安装包,Openssl,服务器证书,安装目录]Linux Apache SSL证书安装
  一、安装准备 1.安装Openssl要使Apache支持SSL,需要首先安装Openssl支持。(现在的服务器一般都已经预装了,可以直接直接跳到下一步。)安装Openssl有两种方式:1)下载源码编译安装:推荐下载安装openssl-0.9.8k.tar.gz
351 0
|
18天前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
178 73
|
11天前
|
Linux Shell
Linux 中 Tail 命令的 9 个实用示例
Linux 中 Tail 命令的 9 个实用示例
40 6
Linux 中 Tail 命令的 9 个实用示例