记一次http换成https的过程

记一次http换成https的过程

http默认端口是80,https默认端口是443,此文章主要记录一次网站配置https的过程。

1. 下载申请下载ssl证书

SSL证书是由证书颁发机构审核验证后颁发的,这种颁发机构也叫CA机构,是一个受信任的数字证书颁发机构,CA机构的全称为Certificate Authority证书认证中心。

SSL证书通过在客户端浏览器和web浏览器之间建立一条SSL安全通道(Secure socket layer(SSL),对传送的数据进行加密和隐藏;确保数据在传送中不被改变,保证数据的完整性,现已成为该领域中全球化的标准。

阿里云计算平台可以为域名申请购买SSL证书,对于个人自用型域名证书也提供免费申请渠道,但是证书有效期只有三个月。

购买完后选择创建证书

然后根据提示一步步操作即可,审核通过后ssl证书申请成功(过程略~),然后下载对用服务器证书,例如我主要配置nginx证书

2. 配置Nginx证书服务

将上面申请的证书下载到本地,解压,获得 .key 和 .pem 两个文件,然后上传到 nginx 所在服务器上

然后打开nginx配置文件,nginx.conf,配置443端口

txt 复制代码
    server {
        listen       443 ssl;
        ssl_certificate /ssl/mycertxxxx.pem;
                    ssl_certificate_key /ssl/mycertxxxx.key;
        ssl_session_timeout 5m;
        ssl_protocols TLSv1.2;
                    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
                    ssl_prefer_server_ciphers on;
        server_name yourservername.com;

        location / {
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            root   /usr/share/nginx/sslhtml;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }

    }

然后重载nginx配置 进到nginx目录 ./nginx -s reload

至此,nginx配置https成功

3. 配置路由转发

本文章主要目的就是记录前后端分离项目中,前端vue+后端springboot,前端nginx配置https后,无法访问后端http服务。

当然正常做法肯定是后端服务也带上ssl证书,配置https,例如下载tomcat证书,然后按照tomcat配置证书步骤再走一遍。

但nginx作为一个优秀的反向代理轻量服务器,应该充分发挥其代理转发功能,所以除了在后端服务中配置https方案外,这里记录使用nginx,将https转发到http服务上。

主要添加上以下配置即可

txt 复制代码
        location /api/ {
        	## 设置转发源IP,告诉目标服务经过了路由转发,可以不配置,但是建议配置,对后端获取源IP友好
          	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          	## 转发目的网址
            proxy_pass http://yourservername:8003/;
        }

然后重载nginx配置 进到nginx目录 ./nginx -s reload

这样就不用更改后端配置,实现前端https,后端http了。至此,全篇结束

相关推荐
二狗mao4 小时前
Uniapp使用websocket进行ai回答的流式输出
websocket·网络协议·uni-app
1560820721910 小时前
基于7VX690T FPGA实现万兆TCP/IP资源和性能测试
网络协议·tcp/ip·fpga开发
赖small强10 小时前
【Linux 网络基础】libwebsockets HTTPS 服务端实现机制详解
linux·网络·https·tls·libwebsockets
布朗克16812 小时前
HTTP 与 HTTPS 的工作原理及其区别
http·https
踏浪无痕12 小时前
线上偶发 502 排查:用 Netty 成功复现 KeepAlive 时间窗口案例实战(附完整源码)
运维·网络协议
北京耐用通信12 小时前
告别“牵一发而动全身”:耐达讯自动化Profibus PA分线器为石化流量计网络构筑安全屏障
人工智能·网络协议·安全·自动化·信息与通信
Sinowintop12 小时前
易连EDI-EasyLink无缝集成之消息队列Kafka
分布式·网络协议·kafka·集成·国产化·as2·国产edi
赖small强16 小时前
【Linux 网络基础】HTTPS 技术文档
linux·网络·https·tls
阿巴~阿巴~20 小时前
自定义协议设计与实践:从协议必要性到JSON流式处理
服务器·网络·网络协议·json·操作系统·自定义协议
jinxinyuuuus1 天前
GTA 风格 AI 生成器:跨IP融合中的“视觉语义冲突”与风格适配损失
人工智能·网络协议