情景:我是 django 的一个 web 服务,运行在容器中,然后使用 nginx 容器进行代理,服务上门有个工具接口,可以进行 requests 请求,反正就是访问任意域名。
问题:现在我发现的问题是,我服务的这个工具可以访问其他网站,但是访问自己的域名就请求超时。这个情况在使用容器化之前是没有遇到过的,所以我可以确定跟容器化之后有关,我怀疑的问题在于 nginx 的配置(因为之前有个跟 nginx 配置相关的问题),但是不知道什么可能引起这种情况。
之前跟 nginx 有关的问题是添加参数解决了,所以这次不知道是否还需要添加参数,之前问题地址: https://www.v2ex.com/t/581432#reply3
1
NaVient 2019-07-23 16:54:28 +08:00
容器内部的请求最好走容器内部的地址,不要走到外部去
|
2
Hopetree OP @NaVient :cry: 这个必须往外走啊,因为这个不是一个接口请求数据的操作,而是一个爬虫,就是爬任何一个网站,去提取一个简单的信息,所以肯定是往外走的,问题就是我搞不懂为啥不能访问自己
|
3
smallSoda 2019-07-23 17:02:47 +08:00
容器要配置 HairpinMode=true 就可以自己访问自己
|
4
ihciah 2019-07-23 18:58:48 +08:00
碰到过这个问题,开 hairpin 就行了
|