Nginx如何配置SSL证书实现Https访问
发布时间 - 2023-05-12 00:00:00 点击率:次背景
由于项目需求,安全起见,需要将之前
的http接口访问变成https访问,所以需要配置ssl证书。项目的架构是这样的:
基本架构是硬负载(readwhere)+ 软负载(nginx)+ tomcat集群,现在的问题是ssl证书要配置在哪里,直接配置在硬负载上?还是分别配置在nginx和tomcat上?还是其他的配置方法呢?
首先在硬负载上配置放弃了,然后通过在网上查找资料,发现可以只在nginx上配置证书,就是说nginx接入使用https,而nginx与tomcat之间使用http进行衔接,这样就游了一个整体思路。
关于ssl证书
关于ssl证书这里简单进行介绍,也是因为项目需要,进行了简单的了解。
ssl证书分为大致分为三种,域名级(dv)、企业级(ov)、增强级(ev),安全性以及价格依次增加。根据自己的需求进行选择,个人使用可以使用dv,便宜;企业用的话一般使用ov,特殊情况下使用ev。
ssl证书配置
由于nginx对于ssl证书配置的支持才使得这种实现方式成为了可能,不得不感叹nginx的强大。
证书准备
nginx配置需要.pem/.crt证书 + .key秘钥,如果您现在拥有的是其他形式的证书,请按照相关说明转化成要求的证书类型,否则是不能完成证书的配置的。一般购买商家都会有相应的转换工具。
准备好了之后,将证书和秘钥放到nginx的conf目录下(也就是跟配置文件nginx.conf在同一个目录),这里特别需要注意:
如果是在linux系统下配置,这就算准备好了;
如果是在windows系统下,需要将.key秘钥文件中的密码去除,否则就会导致配置之后nginx启动不起来,这里是一个坑,本人就卡在了这里,具体处理方法也很简单,在网上下载openssl的windows版本,然后将cmd切换到bin目录下,执行openssl rsa -in server.key -out server2.key,生成的server2.key就是配置需要的秘钥文件,但是需要将文件名改成server.key。
修改nginx配置文件
以下是我nginx.conf配置文件的局部,端口着迷没有使用默认的443,而是改成了8185,根据您的需要进行修改即可,其他配置基本上按照下面就没问题。
server {
listen 8185;
server_name localhost;
ssl on;
ssl_certificate server.pem;
ssl_certificate_key server.key;
ssl_session_timeout 5m;
ssl_protocols tlsv1 tlsv1.1 tlsv1.2;
ssl_ciphers high:!rc4:!md5:!anull:!enull:!null:!dh:!edh:!exp:+medium;
ssl_prefer_server_ciphers on;
location / {
proxy_set_header host $host:$server_port;
proxy_set_header x-real-ip $remote_addr;
proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header x-forwarded-proto $scheme;
proxy_connect_timeout 5;
proxy_send_timeout 5;
proxy_read_timeout 5;
proxy_pass http://qlddm_server;
}修改tomcat配置文件
虽然不需要在tomcat配置证书,但是仍然需要修改一下tomcat的配置server.xml配置文件,具体包含两个地方:
需要将redirectport和proxyport都修改为您的nginx监听端口号。
需要增加以上的value标签,注意httpsserverport也需要修改为nginx监听端口号。
# ssl
# nginx
# tomcat
# 架构
# xml
# 接口
# windows
# http
# https
# linux
# 配置文件
# 您的
# 是在
# 准备好了
# 自己的
# 的是
# 端口号
# 是一个
# 在网上
# 就会
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel如何为API生成Swagger或OpenAPI文档
简单实现Android文件上传
高端网站建设与定制开发一站式解决方案 中企动力
手机软键盘弹出时影响布局的解决方法
php485函数参数是什么意思_php485各参数详细说明【介绍】
Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】
Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】
IOS倒计时设置UIButton标题title的抖动问题
Android okhttputils现在进度显示实例代码
如何挑选最适合建站的高性能VPS主机?
如何在搬瓦工VPS快速搭建网站?
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
公司网站制作价格怎么算,公司办个官网需要多少钱?
如何制作一个表白网站视频,关于勇敢表白的小标题?
三星、SK海力士获美批准:可向中国出口芯片制造设备
Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】
Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】
Laravel Fortify是什么,和Jetstream有什么关系
Laravel怎么使用Intervention Image库处理图片上传和缩放
网站优化排名时,需要考虑哪些问题呢?
高性价比服务器租赁——企业级配置与24小时运维服务
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
Bootstrap整体框架之CSS12栅格系统
Laravel如何使用Eloquent进行子查询
Laravel如何使用Collections进行数据处理?(实用方法示例)
大连 网站制作,大连天途有线官网?
如何挑选优质建站一级代理提升网站排名?
HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】
如何在腾讯云服务器快速搭建个人网站?
如何在万网利用已有域名快速建站?
免费视频制作网站,更新又快又好的免费电影网站?
Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化
Laravel如何与Pusher实现实时通信?(WebSocket示例)
使用豆包 AI 辅助进行简单网页 HTML 结构设计
Laravel如何生成API文档?(Swagger/OpenAPI教程)
Java遍历集合的三种方式
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
Laravel如何实现文件上传和存储?(本地与S3配置)
想要更高端的建设网站,这些原则一定要坚持!
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
进行网站优化必须要坚持的四大原则
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
Laravel如何自定义错误页面(404, 500)?(代码示例)
详解jQuery停止动画——stop()方法的使用
如何快速搭建虚拟主机网站?新手必看指南
微信小程序 require机制详解及实例代码
Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】

