// 百度有很多 8080 的链接 if (location.port == 8080) { location.port = 80 }
这个没有解决啊。做个 301 跳转吧
可以配一下nginx规则,监听8080, 筛选一下来自baidu的referrer请求给301吧
修了一下:
https://github.com/cnodejs/nodeclub/commit/7b6ad905e94dc851e7eaaf162058a2d4ebcfb90c
测试语句:curl -v http://cnodejs.org:8080/about
@alsotang 没解决啊,按@wssgcg1213 方式做吧
@liuxufei 没解决的现象是怎样的?
@alsotang 8080没有跳转到80端口,8080的又无法访问
@alsotang 查了下, 8080端口是开放的
请求307, 怀疑是HSTS的问题
请求变成了 https://cnodejs.org:8080/…paths
也就是在8080端口下使用https协议… 可以尝试nginx
server {
listen 8080 ssl;
# ...
}
试了一下 上面这样可以通过8080端口过HTTPS协议… 好像只能这样了
属于HSTS的锅 因为现在用户浏览器上的HSTS已经生效了, 我看了下cnodejs这max-age配的还是有点长的啊, 那如果要解决的话暂时只能使用这个方案了吧
配置参考:
ok:
@wssgcg1213 确实在 hsts 存在的情况下,浏览器直接访问 8080 会访问不了。
8080现在是 node 在监听的,所以 nginx 没法同时监听,如果 nginx 监听的话,那么 node 就要换个端口。不折腾这个了。。。
等过段时间百度纠正了,这事也没了。