我有一个正在运行的家庭服务器(使用 Windows 7),在 LAN 内我可以浏览网站。我在防火墙和路由器中转发端口方面做了必要的更改。
遗憾的是,当我尝试通过外部 IP(以及我正在转发的端口)从 LAN 外部访问该站点时,我无法访问该站点,就像它不存在一样。
我很确定我正确地进行了转发,因为当我尝试从局域网中的计算机浏览网页并使用路由器外部 IP(和端口)时,我就能够访问我的网站。
所有指南都到此为止。我在网上搜索了好几天,但一无所获。
我知道这没关系,但我试过 apache2.4、tomcat、xampp,甚至用 Java 构建了我自己的服务器——它们都无法在局域网之外工作
答案1
您的 ISP 很可能阻止了端口 80。端口 80 是用于 Web 的标准端口。ISP 将阻止端口 80,称网络托管是企业级服务,将向您收取更多费用。尝试将服务器中的端口更改为 8080,并更改端口转发。然后在浏览器中连接到您的服务器,并在:8080
末尾附加。完成后,将以下内容替换为您的外部 IP 地址,并将其输入到浏览器中http://10.10.10.10:8080
。
您可以随时咨询您的 ISP,看他们是否阻止了 80 端口。如果是,您可以简单地使用其他端口(如 8080),或者支付更高级别的服务费用。
答案2
您的互联网接入点(电缆调制解调器、dsl 调制解调器)是否也充当路由器,或者您在该设备之后是否有第二个设备,例如无线路由器?如果您有两个设备,则您的设置实际上可能需要在外部设备(调制解调器)和内部设备(无线路由器)上进行端口转发,或者更好的是,将外部设备置于桥接模式,使您购买的路由器在路由方面成为网络上最外层的设备。