我有一个在192.168.10.1
地址上运行的 Nginx Web 服务器。另外,我已将我的域指向此服务器。此服务器通过公司网络具有公共 IP NAT-d。我可以使用域名从外部网络正常访问我的网站。但是,我无法从服务器本身或 LAN 网络(从192.168.10.2
服务器)访问该网站
例如,curl mydomain.example
不从服务器本身或从辅助服务器响应192.168.10.2
我实际上可以将此服务器的内部 IP 地址放在服务器/etc/hosts
和 curl 中都可以正常工作。但如果可能的话,我想解决根本原因,有人遇到过类似的情况吗?什么可能导致此问题?
问题是您正在尝试使用公共地址从局域网内部访问资源。大多数路由器对此感到困惑。
有几种解决方案(我使用过,可能还有更多):
您使用哪一个主要取决于您的网络设置和可用硬件。主机文件是最简单的,但如果它也是您在网络外使用的笔记本电脑,则必须根据您所在的位置启用/禁用该规则。仅当您已经设置了内部/外部 dns 时,第二个选项才有效,第三个选项将取决于您的路由器功能。这是我使用 atm 的那个(我的路由器是 Mikrotik)。那里可能有更多解决方案,因此您可以查看其他回复或谷歌。