gpt4 book ai didi

node.js - Docker 中的 Express 应用程序。仅限制对主机 localhost 的访问

转载 作者:搜寻专家 更新时间:2023-11-01 00:28:11 24 4
gpt4 key购买 nike

我正在尝试限制对我的 express/nodejs 应用程序的访问,以便只能从它的域 url 访问它。目前,如果我转到 http://ip-address-of-server:3000,该应用程序将直接提供服务,绕过 nginx。

我尝试在 app.listen 中添加“localhost”——

app.listen(4000, 'localhost' , () => console.log('Server running'));

但这最终会使该应用程序完全无法访问。甚至通过 nginx。

该应用程序在 docker 容器中运行。并且 nginx 在主机上运行。我认为这可能是造成这种情况的原因,但不知道如何解决。

最佳答案

您可以为您的应用程序使用 Docker 主机模式网络,因为您提到“应用程序在 docker 容器内运行。nginx 在主机上运行。”。

引用 - https://docs.docker.com/network/host/

这样,它就可以通过同一网络上的 nginx 访问。在 docker 主机模式网络中启动容器后,您的“localhost”设置将开始正常工作。

关于node.js - Docker 中的 Express 应用程序。仅限制对主机 localhost 的访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49725587/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com