我使用的是 Ubuntu 14.04 桌面版。我安装了 LAMP,并且相信还安装了 DNS 程序和邮件服务器。由于我的 ISP 是动态 IP,因此我使用 noip.com 的免费动态 DNS 服务(我知道该服务有效,因为主机名重定向到我的路由器,直到我进行端口转发)。问题是,我的服务器只能通过连接到我的网络的某些设备使用该主机名访问。(我通过关闭手机上的 wifi 进行了测试。)
我认为问题可能与我的 apache2 设置有关,因为当我重新启动服务器时,它会显示以下消息:
Restarting web server apache2
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1.
Set the 'ServerName' directive globally to suppress this message.
我已将这一行:添加ServerName erikstagg.ddns.net
到我的 apache2.conf 文件中,这样就删除了该消息,但它并没有帮助从网络访问我的网站。
我想这就是我能提供的全部信息了。我现在甚至不知道该查什么。
先谢谢您的帮助!
答案1
您需要查看互联网路由器的配置并了解如何进行“端口转发”。
外部请求(例如网页请求)到达路由器后,路由器不知道如何处理这些请求,因此会直接丢弃它们。您需要告诉路由器将收到的请求(例如 TCP 端口 80)转发到实际服务器的内部 IP 地址(很可能是同一端口)。
您还需要确保您的 WLAN 服务器在本地网络中具有静态 IP 地址。
编辑
我写的WLAN server has a static IP address
意思是你的服务器在本地网络上的 IP 地址 - 即 192.168.XY 或 10.XYZ。此地址通常由内置于无线路由器的 DHCP 服务器提供。你需要进入路由器的 DHCP 设置,查看它提供的 IP 地址范围,然后配置静态内部的一个 - 在同一网络上 - 在您的服务器上。
那么您需要在端口转发中使用相同的内部静态地址。