我对 Ubuntu 还比较陌生。我有一个带有 apache 的 Ubuntu LTS 16.04 设置。我有 3 个域。它们指向我的公共 IP 地址,我使用 namecheap dns 服务,因为我使用的是动态 IP 地址。当我尝试联系我的 3 个域中的任何一个时,我无法连接到它们。我收到 ERR_CONNECTION_TIMED_OUT 我已在端口 80 上设置了端口转发到我的 Ubuntu 机器 IP 10.0.0.111 如果我从我的 Windows 10 计算机上输入 10.0.0.111,我可以看到我的 index.html 页面。但只有我的一个网站,而不是其他两个。当我在我的域上执行 nslookup 时,它会解析为我的公共 IP。
我做错了什么?我已经寻求帮助好几个星期了。
答案1
如果正确设置了域名,它将返回您的外部 IP 地址。如果您在服务器网络内,namecheap 将解析为您的外部 IP 地址,如果您位于网络内,则解析起来非常困难,因为您需要将所有域名解析为 10.0.0.111 IP 地址。您有两个选择:
从外部网络联系您的服务器以检查域名解析,当然还有您的 apache 设置三个不同的域名。
在您的网络内设置本地名称服务解析,它将把您的所有域解析为本地局域网地址 10.0.0.111。这需要在您的路由器上完成。如果您使用 Openwrt,配置非常简单(使用 dnsmasq 服务与 dnsmasq.conf 配置文件) - 更多信息可以在 Openwrt wiki 中找到。对于其他路由器固件,请查看路由器的文档。
当您可以正确解析 DNS 后,接下来需要执行以下操作:
如果您正确配置了 Apache,Web 服务器将返回您为不同域设置的页面,具体取决于您在浏览器的地址栏中输入的内容。可以在同一个 IP 和服务器上设置多个域。我想您已经这样做了。