腾讯云 ssl 证书的问题

2020-05-09 22:33:02 +08:00
 jwh199588

security: oauth2: client: access-token-uri: http://localhost:8090/uaa/oauth/token user-authorization-uri: http://localhost:8868/oauth/authorize client-id: ${spring.application.name} client-secret: 123456 registered-redirect-uri: /oauth/code

腾讯云申请了一个 ssl 的免费证书,放到 apache 后,访问登陆页面的时候,明明是 http://localhost:8868,但是最后页面显示的是 https://localhost:8868,哪位大神知道为什么变成了 https

1820 次点击
所在节点    程序员
4 条回复
superluke
2020-05-09 23:29:08 +08:00
先核实下证书配置是否有问题,可以通过本地直接访问 https://localhost:8868 网页是否可以正常打开,如果可以正常访问,说明证书配置没有问题,反之建议核实下 apache 配置文件哈
yaxin
2020-05-10 10:47:25 +08:00
这个跟证书并没有关系,应该是你 apache 的配置问题,看一下是否由配置 http 跳转 https,如果没有,可以试着开一个隐私窗口,看一下是否还是 301/302 跳转,如果不跳转,说明你之前配置了 301 跳转,浏览器缓存了下来,尝试清楚缓存。如果还是跳转,则需要看一下你 apache 的配置,确认没有跳转配置后重启 apache 配置,然后重试开隐私窗口确认。
crll
2020-05-10 12:53:50 +08:00
考虑下配置和浏览器缓存
jwh199588
2020-05-11 09:40:58 +08:00
没人回答我就地址及回答一下:
首先我域名对应的 ssl 证书是腾讯免费申请的
其次我使用的是 apache 做的负载均衡

在访问地址的时候,发现原来是 http 的访问地址在跳转的时候默认转为了 https,刚开始我以为是 ssl 证书的问题,但是后来查询资料才知道,原来 HTTP 严格传输安全协议导致的问题,在访问地址的响应头中包含相应的 Strict-Transport-Security: max-age=31536000; includeSubDomains,那么对应的 http 地址就会默认的转为 https 地址

因为这个问题,所以我在 apache 的 http.conf 文件中添加如下的配置,让 hsts 失效
<If "%{HTTP_HOST} = 'www.dev.domain.com'">
    <IfModule mod_headers.c>
        Header unset Strict-Transport-Security
        Header always set Strict-Transport-Security "max-age=0;includeSubDomains"
    </IfModule>
</If>


if 在 apache 中有可能是无效的,这个跟版本有关系,如果无效删除 if 即可

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

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

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

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

© 2021 V2EX