从外部局域网访问虚拟主机

问题描述:

我正在建立一个Web开发平台,它使尽可能简单的事情来编写和测试本地计算机上的所有代码,并将其与我的Web服务器同步。我设置了几个虚拟主机,这样我就可以通过键入“project”而不是“localhost/project”作为URL来访问我的项目。从外部局域网访问虚拟主机

我也想设置它,以便我可以从任何网络访问我的项目。我注册了一个指向我电脑IP地址的DYNDNS URL。

在设置虚拟主机之前,从任何地方都可以很好地工作。现在,当我尝试通过输入我的DYNDNS URL来访问我的项目时,我收到403 Forbidden错误消息,“您无权访问/在此服务器上。”

要设置我的虚拟主机,我编辑了两个文件 - system32/drivers/etc文件夹中的主机和我的WAMP安装的Apache文件夹中的httpd-vhosts.conf。

在hosts文件中,我只是添加了与127.0.0.1关联的服务器名称。我添加了以下到HTTP-vhosts.conf文件:

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "c:/wamp/www/ladybug" 
    ServerName ladybug 
    ErrorLog "logs/your_own-error.log" 
    CustomLog "logs/your_own-access.log" common 
</VirtualHost> 

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "c:/wamp/www" 
    ServerName localhost 
    ErrorLog "logs/localhost-error.log" 
    CustomLog "logs/localhost-access.log" common 
</VirtualHost> 

任何想法,为什么我无法从我的DYNDNS输入网址访问我的项目?另外,是否可以设置虚拟主机,以便当我从我的网络外部的随机计算机输入http://projects时,我访问url.dyndns.info/projects(又名我的家用计算机上的WAMP项目)?

非常感谢帮助,谢谢!

+0

您可能会在serverfault.com上询问更多的帮助,因为受众应该更熟悉Apache服务器/模块配置 – nvuono 2010-04-25 05:21:20

403禁止的错误消息, “您无权访问/在此服务器上。”

我偶然发现了Apache的配置,但它听起来像你的身份验证是搞砸了当请求来自本地网络之外 - 你使用mod_auth吗?

试图通过添加以下内容到<VirtualHost/><Directory/>条目,使访问所有网络:

Order allow,deny 
Allow from all 

我知道这是一个老问题,但我最近花时间来考虑这个问题,张贴我的发现。

这与您的路由器查找地址并在内部处理请求的方式有关。我在此贴出更多信息:http://twigstechtips.blogspot.com/2012/01/accessing-dyndns-address-within-lan.html