请求一个关于 SLB 下 url 不带 / 时跳转的问题。

2019-07-04 09:23:49 +08:00
 FakeLeung

在浏览器中输入 https://xxx.com/yyy(注意此处不带 /)回车后,浏览器将会进行 2 次重定向。

  1. https 不带 / 重定向至 http 带 /

  2. http 带 / 重定向至 https 带 /

  3. 访问 https 带 / 成功

基本确定是 SLB 的问题。假如不打开 http 强制跳转 https 这个选项,则访问正常。一旦打开,则无法使用。

下面是提交的阿里工单的回复:

工程师 60107 号 : 您好,这边测试时也是直接浏览器输入 xxx.com/oss,并未输入 https,应该是您那边设置的强制跳转生效,跳转到了 https 的,您看之前的截图,是没有其他多余的跳转的,应该是您本地的问题,建议您切换下其他网络环境或其他电脑访问测试下 

其实 60107 号已经模拟出来的了。。。

工程师 68099 号 : 您好,我们这边没有模拟出来,但是通过一些工具确实看到了这个情况。建议这样,您先把这个域名的 url 转发取消掉,直接解析到 443 的监听上,然后再看下。 不行的话,在您那边客户端抓包下,然后我们看下 https://help.aliyun.com/knowledge_detail/40730.html
1537 次点击
所在节点    程序员
3 条回复
Judoon
2019-07-04 10:23:20 +08:00
你的 SLB 后端服务是什么?看起来是个 Tengine ? 配置可以拿上来看看
我看你的第一个 301 respond 是带了 access-control 这些 header,
所以猜测不是 slb 给的 301,而是你后端服务给的 301。

slb 只做了 http-->https 的

你看你后端服务的日志
FakeLeung
2019-07-04 10:26:38 +08:00
@Judoon #1
后端是 nginx,tengine 像是 slb 的。

但是我们另一台服务器(在负载均衡,但没开强制跳转),输入同样的网址,只进行了一次的跳转。
opengps
2019-07-04 13:01:03 +08:00
你是在哪测试的?为啥 remote 地址是 127.0.0.1

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/579846

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX