2012-08-07 172 views
10

我正在尝试进行设置,以便我可以在计算机A的计算机A的虚拟主机上访问我的网站.A和B都位于同一网络上。 我在Win 7上使用xampp。从同一本地网络上的计算机访问虚拟主机

因此,这里是计算机A(服务器)在httpd-vhosts.conf文件中具有如下虚拟主机配置的问题。

NameVirtualHost project:81 

<VirtualHost project:81> 

    DocumentRoot "D:/work/website" 
    ServerName project:81 
    <Directory "D:/work/website"> 
    Options Indexes FollowSymLinks Includes ExecCGI  
    AllowOverride All 
    Order Allow,Deny 
    Allow from all 
    </Directory> 
</VirtualHost> 

(使用端口81端口80具有IIS运行,不知道很多关于但是这些东西)

这种配置能正常工作本地计算机(服务器)上。即项目:81在浏览器的地址栏中打开网站,因为它应该。

现在在计算机B(客户端)我改了hosts文件包含服务器的IP与虚拟主机的名称等一起: -

192.168.1.7项目

现在,当我在客户端浏览器中输入项目:81时,它将我带到服务器,但它不会将我带到虚拟主机目录,而是将它带到默认目录..即在我的情况下是

C: \ xampp \ htdocs

现在我卡住了,无法让客户端指向当前目标。 因此,任何人都可以建议我在这里做错了什么,或者我需要做些什么才能从客户端机器访问正确的虚拟主机站点。

在此先感谢您的帮助

回答

16

确定,所以濑萨尔瓦多Kahfi对我很老的答覆促使我做一些更多的研究和阅读Apache的网站。

所以我得到的是这个,我的NameVirtualHost指令是不正确的。 因此取而代之的是,

NameVirtualHost project:81 

<VirtualHost project:81> 

    DocumentRoot "D:/work/website" 
    ServerName project:81 
    <Directory "D:/work/website"> 
    Options Indexes FollowSymLinks Includes ExecCGI  
    AllowOverride All 
    Order Allow,Deny 
    Allow from all 
    </Directory> 
</VirtualHost> 

我所要做的就是这一点。 (在这种情况下,我的服务器(机器A)本地IP)都可以使用。注意'*',我也可以使用IP地址。现在我所要做的就是在客户端机器上输入“project:81”,并得到我的眼睛希望看到的东西.. :)

我从中得到了一些东西。

1)如何使用NameVirtualHost(或它的目的基本上是什么。)。在这里阅读更多 http://httpd.apache.org/docs/2.2/mod/core.html#namevirtualhost 这一个还不错http://www.thegeekstuff.com/2011/07/apache-virtual-host/

2)您可以通过命令行使用此:

httpd -D DUMP_VHOSTS 

知道你的虚拟主机是如何设置(也将给您关于优先一些警告如果有什么地方错了你的设置)

3)其他的手势来帮助你让你帮助自己.. :)因此保持帮助和摇摆。

2

您是否尝试将端口包含在客户端主机文件中?

192.168.1.7:81项目

+0

感谢您的回复.. :) ...不幸的是,也没有工作 – codisfy 2013-04-19 18:43:56

+0

很高兴知道你找到解决方案,所以我可以参考这个问题,当我有同样的问题,我爱这个社区;) – 2013-04-24 08:49:53

+3

您不能在主机文件中包含端口号! – 2014-02-11 16:13:23

相关问题