服务器无法公开访问

时间:2016-05-07 02:44:02

标签: routing portforwarding

我无法从外部访问我的Web服务器(在Windows XP上运行Apache 2.4)。

我已经从路由器转发了端口80:

Port Forwarding (Router)

我还从Windows防火墙打开了端口80,并为其添加了一个例外:

Port Forwarding (Firewall)

我找到了路由解决方案here。这有用吗?

但是,我只能从我的网络中访问我的网站。当我连接到其他网络时,我无法访问我的网站。

1 个答案:

答案 0 :(得分:0)

我假设你正在使用住宅互联网连接。根据您的ISP,例如Cox(我的心爱的 ISP),他们可能会选择block your public http port作为激​​励,让您升级到昂贵的商业互联网连接。

您可以通过运行network map进行检查。安装完成后,从网络外的某个地方运行命令:

nmap -Pn -p 80 192.168.0.1

并将192.168.0.1 IP更改为your public IP。幸运的话,你会得到一个像这样的开放式扫描:

Starting Nmap 6.40 ( http://nmap.org ) at 2016-03-22 22:17 CDT
Nmap scan report for 192.168.0.1
Host is up (0.0028s latency).
PORT   STATE SERVICE
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 0.13 seconds

否则,您将获得如下过滤扫描:

Starting Nmap 6.40 ( http://nmap.org ) at 2016-03-22 22:19 CDT
Nmap scan report for 192.168.0.1
Host is up.
PORT   STATE    SERVICE
80/tcp filtered http

Nmap done: 1 IP address (1 host up) scanned in 2.58 seconds

在这种情况下,其他人仍然可以通过非阻塞端口与您联系。 8080是一个受欢迎的选择。您需要调整路由器中的设置以将您的传入外部端口8080端口转发到您服务器内部 IP的内部端口80。

编辑:我从屏幕截图中看到,您无法将一个端口转发到其他端口,至少在此屏幕上。检查您的其他屏幕,并搜索如何使用您的路由器型号。这个路由器可能无法实现 - 我曾经拥有一台不支持该基本功能的廉价Netgear路由器。在这种情况下,您需要更改或添加apache侦听的端口,documentation is here

正确完成设置后,全世界将能够http://192.168.0.1:8080访问您的网站,再次确保使用公开 IP,而不是192.168。

我从another answer of mine

借用了此片段
相关问题