我该如何设置我的服务器以便从外部可以看到它?
我已经为我的服务器设置了端口转发(端口 80)。我还为服务器设置了静态 IP。
我认为原因是服务器(Ubuntu Server 13.04 上的 Apache2)表示无法可靠地确定 FQDN。
这是 hoastname 的结果:Elliot-Web
这是 hostname -f 的结果:hostname: Name or service not known
以下是 hosts 文件的内容:
127.0.0.1 localhost
127.0.1.1 Elliot-Web.elliot-labs.com
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
如果您想知道的话,我已经将我的域名设置为指向我的 WAN IP(来自 godaddy)。
答案1
大多数情况下,问题不是本地 IP,而是全局 IP。必须在 DNS 主机中指定全局 IP,以便您的域名链接到主机的全局 IP。如果此链接断开,路由器将无法获取任何数据,并且网站将不可用。
要检查的事项。
- 该网站可以通过全球 IP 访问吗?
- 全局ip和域名的ip一样吗?
- 路由器是否配置为将所有网站请求发送到您的服务器?
- 服务器是否在本地 IP 上运行?
apache 不需要域名,它只需要一个与现实世界的有效链接,比如全局 IP,然后将您的域名链接到该全局 IP。
答案2
我重置了它,但没有成功。然后我尝试从邻居的 Wi-Fi 访问它……成功了 YARGHHHH!所以一定是我的本地网络出了问题。四处寻找 DNSMasq 设置,并弄清楚如何将 elliot-labs.com 重定向到我的服务器,这样我的本地 IP 就不再是我的 WANN IP,而是在后台的本地 IP。它工作得很好,而且另一个副作用是我的网络没有延迟(不知道为什么……)。感谢 Alvar 的所有帮助。我从我的 WAN 访问时没有遇到任何问题,而是 LAN。