在家里托管一个网站

时间:2015-08-22 20:40:30

标签: apache port wampserver

我在Windows 8 64位上使用WAMP和Apache 2.4.9。 我在路由器上设置了端口转发(用于端口80),并在我的网络上为我的计算机设置了静态IP。 我可以通过计算机和网络访问我的网站。但是我无法通过在浏览器URL栏上输入我的IP来访问它。

我相信我的ISP阻止端口80或阻止我托管Web服务器。我怎样才能避免这种阻塞?

2 个答案:

答案 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以侦听该不同的端口。