3000 端口如何使用 https

2017-10-25 16:47:51 +08:00
 edison111cry
经过对 nginx 的配置实现了 HTTP 强制转为 HTTPS:访问
http://www.example.com
或者
http://www.example.com:80
都可以跳转到:

https://www.example.com

但是同时服务器上还有一个 NODE 程序在跑,访问:
http://www.example.com:3000
可以访问到,但是有没有办法
https://www.example.com:3000
也可以访问到呢?
8232 次点击
所在节点    问与答
30 条回复
Marfal
2017-10-25 22:31:27 +08:00
xfspace
2017-10-26 00:03:05 +08:00
@edison111cry 用 proxy_pass ?
ysc3839
2017-10-26 03:01:10 +08:00
@edison111cry 肯定可以的,https 又不强制 443 端口,你可以在 3000 端口上开 https。
paranoiagu
2017-10-26 08:20:19 +08:00
3000 端口既是 http,又是 https,这怎么搞?
ysc3839
2017-10-26 08:28:59 +08:00
@paranoiagu 我不确定 nginx 能否实现。不过我前面说了,nginx 能实现一个类似的效果:在 3000 开 https,然后用 http//host:3000 访问的时候自动跳转为 https//host:3000
msg7086
2017-10-26 09:39:56 +08:00
你这例子前后完全是两回事啊。

你 nginx 上是访问 http 80 端口自动跳转到 https 443 端口。
这是两个不同的服务跑在两个不同的端口上。
一个是 80,一个是 443。

现在你要 3000 端口既做 http 又做 https,这难度跟之前的可不是一个级别。
edison111cry
2017-10-26 11:32:22 +08:00
@msg7086 经过大家的回复,我意识到自已之前的理解有一定问题了。

之前访问 http:/a.com:80 或者 http:/a.com 可以访问到 index.html 程序。
访问 http:/a.com:3000 可以访问到 node.js 程序。

然后我布薯了 HTTPS,让 HTTP 链接转为 HTTPS,80 端口没有问题,但是 3000 端口访问不到
msg7086
2017-10-26 11:37:53 +08:00
80 端口部署 https 的话,是部署在 443 上,不是 80 上的。
msg7086
2017-10-26 11:39:28 +08:00
也就是说,首先你要为你 nodejs 指定一个新的端口给 https 服务才好。
openDatabase
2019-04-01 16:18:45 +08:00
@edison111cry 现在怎么样了 问题解决了吗 我也遇到了同样的问题,现在网站访问使用 https http 访问会从重写成 https,还有一个链接是通过 8081 才能访问的 怎么让 8081 的访问也启动 https

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

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

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

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

© 2021 V2EX