关于SLB使用中的HTTP转发HTTPS的挖坑解决

简介: 使用阿里云SLB自带的HTTP强制转发到HTTPS的小坑解决心得

起因

前些日子早上8点多突然接到合作客户的紧急电话,因为阿里云服务到期没有及时续费,导致后续操作中误删SLB和容器服务,经过小伙伴们通宵达旦的努力,还是未能完全恢复访问,希望能够过去一起看一下。
注:虽然最终的解决过程只花了不到3分钟,但确是走了一大段弯路,写下该文聊以纪念这段曲折的路程。

解决过程

顾不得收拾,马上驱车20公里到达现场,倾听小伙伴的情况后,开始按照如下思路逐一排查。
1.因为使用k8s容器服务,直接用容器外网IP访问,结果显示HTTP正常,HTTPS无法访问,报502错误,说明容器服务部署正常;
2.切换至域名访问,发现HTTP和HTTPS都访问不了;
3.通过ping确认域名指向ip,发现解析地址未指向SLB;
4.通过阿里域名解析服务(需要登录阿里云后才能访问)进行域名和SLB公网IP绑定;
5.重新通过域名访问,HTTP正常,HTTPS异常;
6.检查SSL证书,发现未在SLB中进行配置(注:SLB为新购服务器);
7.检查容器的yaml文件,确认已配置SSL证书,且没有设置nginx服务;
8.容器的yaml文件开启https及443端口,发现http异常,报502错误,https又正常了;
9.判定应该是SLB没有正确配置的原因。(奇怪为啥当初要进行SSL证书双重配置?)
于是到这里整个调查结束,大概花了20分钟;
注:因我对该项目不熟悉,且是2年前的服务器配置,最初人员都已经替换了几轮(估计是跳到阿里去了),更糟糕的是没有留下任何配置说明,
10.接下来开始设置SLB的HTTP强制转发到HTTPS,参考了阿里云的帮助文档之
[简单路由-HTTP 协议变为 HTTPS 协议之一],
[简单路由-HTTP 协议变为 HTTPS 协议之二],
[HTTP重定向至HTTPS]
palapala...
11.突然发现帮助教程和新的SLB配置页面有些不一样(注:之前都是通过nginx或者apache进行配置的,SLB上还是头一遭,为啥?因为小户人家要精打细算啊)。
教程页面如下
15354469412796_zh-CN.png
新的HTTP配置页面
微信图片_20191211222505.png
大家看见【监听转发】的开关了吗?对,它需要【展开高级配置】后才能看到,我们3人8只眼(别问我为什么多了2只眼)竟然生生的错过了。
12.于是找【监听转发】的按钮花了好久,一开始以为阿里把这个功能给阉割了,琢磨着又不是,反反复复,复复反反配置HTTPS,又配置HTTP,然后又折腾yaml文件,甚至小伙伴们都开始建议要不要在代码里面做个强制跳转,Oh,My God!
13.然事情总是那么的因缘际会,福至心灵。有时候很苦恼的问题对于程序员来说会突然幡然醒悟,
配置好HTTPS后,偶然间点了下【监听转发】的开关,然后kuakuakuakua,一顿操作猛如虎后,分别用HTTP和HTTPS访问域名,居然ok了,瞬间满心的欢喜,内心的奔腾,面对2个多小时的折腾,心想总算对得起十几年的手艺,没有给它丢脸。
微信图片_20191211223416.png
配置成功后的列表页面如下:
QQ截图20191211223808.png

总结

1.虽然是小问题,但是碰到坎的时候别钻牛角尖,有时候洗个脸看个书换个情绪真的会有福报。
2.要多翻阿里云的帮助文档,想起了java手册,html文档,MSDN的日子;
3.SLB配置强转换是有顺序的,先https,再http。删除的时候也是,先http再https,有依赖关系。
4.现在微信小程序,IOS应用包括谷歌等都开始强制使用HTTPS了,很奇怪为啥要把【强制转发】开关给掩藏起来(即通过点击高级配置后才能看到),阿里云的产品说很多客户的网站还是HTTP访问的占了多数,好吧!You Say You Yes。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
8月前
|
XML JSON API
识别这些API接口定义(http,https,api,RPC,webservice,Restful api ,OpenAPI)
本内容介绍了API相关的术语分类,包括传输协议(HTTP/HTTPS)、接口风格(RESTful、WebService、RPC)及开放程度(API、OpenAPI),帮助理解各类API的特点与应用场景。
|
8月前
|
Android开发 Kotlin
|
10月前
|
安全 网络安全 数据安全/隐私保护
网页安全演进:HTTP、HTTPS与HSTS
这整个进程实质上是网页安全由“裸奔”到“穿衣”再到“绑带”的演变史。它保障了数据的机密性和完整性,降低了中间人攻击的风险,最终实现了更自由、更安全的网络环境。但别忘了,技术永远在发展,网络安全的赛跑也永无终点。*ENDPOINT*
672 11
|
11月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
307 18
|
11月前
|
JSON 安全 网络协议
HTTP/HTTPS协议(请求响应模型、状态码)
本文简要介绍了HTTP与HTTPS协议的基础知识。HTTP是一种无状态的超文本传输协议,基于TCP/IP,常用80端口,通过请求-响应模型实现客户端与服务器间的通信;HTTPS为HTTP的安全版本,基于SSL/TLS加密技术,使用443端口,确保数据传输的安全性。文中还详细描述了HTTP请求方法(如GET、POST)、请求与响应头字段、状态码分类及意义,并对比了两者在请求-响应模型中的安全性差异。
1008 20
|
11月前
|
安全 网络协议 算法
HTTP/HTTPS与SOCKS5协议在隧道代理中的兼容性设计解析
本文系统探讨了构建企业级双协议隧道代理系统的挑战与实现。首先对比HTTP/HTTPS和SOCKS5协议特性,分析其在工作模型、连接管理和加密方式上的差异。接着提出兼容性架构设计,包括双协议接入层与统一隧道内核,通过协议识别模块和分层设计实现高效转换。关键技术部分深入解析协议转换引擎、连接管理策略及加密传输方案,并从性能优化、安全增强到典型应用场景全面展开。最后指出未来发展趋势将更高效、安全与智能。
480 1
|
网络协议 安全 网络安全
HTTP与HTTPS协议入门
HTTP协议是互联网的基石,HTTPS则是其安全版本。HTTP基于TCP/IP协议,属于应用层协议,不涉及数据包传输细节,主要规定客户端与服务器的通信格式,默认端口为80。
666 25
HTTP与HTTPS协议入门
|
12月前
|
安全 网络安全 数据安全/隐私保护
HTTP 与 HTTPS 协议及 SSL 证书解析-http和https到底有什么区别?-优雅草卓伊凡
HTTP 与 HTTPS 协议及 SSL 证书解析-http和https到底有什么区别?-优雅草卓伊凡
640 3
|
缓存 安全 网络安全
代理协议解析:如何根据需求选择HTTP、HTTPS或SOCKS5?
本文详细介绍了HTTP、HTTPS和SOCKS5三种代理协议的特点、优缺点以及适用场景。通过对比和分析,可以根据具体需求选择最合适的代理协议。希望本文能帮助您更好地理解和应用代理协议,提高网络应用的安全性和性能。
1106 17
|
安全 搜索推荐 网络安全
HTTPS与HTTP:区别及安全性对比
HTTP和HTTPS是现代网络通信中的两种重要协议。HTTP为明文传输,简单但不安全;HTTPS基于HTTP并通过SSL/TLS加密,确保数据安全性和完整性,防止劫持和篡改。HTTPS还提供身份验证,保护用户隐私并防止中间人攻击。尽管HTTPS有额外的性能开销和配置成本,但在涉及敏感信息的场景中,如在线支付和用户登录,其安全性优势至关重要。搜索引擎也更青睐HTTPS网站,有助于提升SEO排名。综上,HTTPS已成为大多数网站的必然选择,以保障用户数据安全和合规性。
2300 1

热门文章

最新文章