我在Windows 8 64位上使用WAMP和Apache 2.4.9。 我在路由器上设置了端口转发(用于端口80),并在我的网络上为我的计算机设置了静态IP。 我可以通过计算机和网络访问我的网站。但是我无法通过在浏览器URL栏上输入我的IP来访问它。
我相信我的ISP阻止端口80或阻止我托管Web服务器。我怎样才能避免这种阻塞?
答案 0 :(得分:1)
有很多事情可以帮助你解决这个问题,这里有一些我知道的事情。
您正在路由器内的浏览器上输入您的WAN IP地址
您的ISP实际上阻止了端口80
你在某种复合/公寓楼,你的互联网通过一个中央入口点,因此你在另一个路由器后面。
您正在路由器内的浏览器上输入您的WAN IP地址
大多数SOHO路由器没有所需的技术,即 loopback ,允许您在路由器内使用WAN IP地址。 解决方案:测试应该从您的路由器外部进行,即外出并使用朋友互联网连接查看您是否可以访问您的网站,或在连接到ISP网络时使用您的手机而不是你自己的wifi 。
您的ISP实际上阻止了端口80
您可以通过将路由器的端口号更改为PC的端口80来进行测试。为此,请执行以下操作:
更改路由器端口转发,以便将传入端口8080转发到本地PC的端口80。
现在再次使用本地网络或手机ISP网络之外的互联网连接,并尝试连接到YOURIP:8080/
您处于某种复合/公寓区域,您的互联网通过中央入口点进入,因此您位于路由器和另一台无法控制的中央路由器后面。 强>
如果你的路由器WAN ip addres属于这些范围之一,即专用网络地址
,你通常可以告诉你这种情况。10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
如果是这种情况,您可能无法满意地解决这个问题。虽然照顾这个中央路由器的人可能会声称他们没有阻止端口80,当然,由于路由器的工作方式,他们只是没有主动阻止它。即使你可以让他们到Port Forward他们的路由器端口80到你的,它只会对你有用,所以如果2个人想要这样做,他们就不能在没有为他们的网络增加一些额外硬件的情况下这样做,这是不可能的
警告强>
您会在网上看到很多建议,建议更改httpd.conf
文件的这一部分可能会导致Apache允许您从任何地方访问它:
<Directory />
AllowOverride none
Require all denied
</Directory>
不应从上面改变本节,即完全禁止任何访问。
<Directory />
指的是安装Apache的驱动器的根目录。
保护Apache实例的推荐机制是禁止对root
文件夹及其所有子文件夹的任何和所有访问,如上所述。然后,您特别允许访问Apache实际需要访问的文件夹,默认情况下,WAMPServer应该在本节中完成:
<Directory "d:/wamp/www/">
...
</Directory>
或者在每个托管网站的虚拟主机定义中。
如果您将上述内容更改为Require all allowed
您所说的内容:如果我遭到黑客入侵,请允许黑客完全访问此驱动器上的所有文件夹。在unix上,这可能实际上并不那么糟糕,因为unix的基本精神是没有人可以访问任何东西,除非获得授权,因此其他安全机制可能会停止访问驱动器上的任何文件夹。但是在Windows上,基本的精神是你的PC,你可以随心所欲地做任何事情这可能是非常危险的,并为黑客提供了一个方便的攻击媒介,即Apache,一旦他们妥协Apache,这基本上就是很容易放弃皇冠上的宝石。
答案 1 :(得分:0)
有些isp会阻止您进行托管。您可以使用在线端口扫描程序查看您的端口80是否是正常打开和转发。如果您知道您的设置正确并且您的ISP确实阻塞了,您始终可以端口转发其他端口并配置apache以侦听该不同的端口。