从外部LAN访问本地虚拟主机作为虚拟主机,如http:// sitename而不是http:// systemname/sitename

Jay*_*ran 7 apache virtualhost

我正在开发一个由两个人管理的网站.一个是我,另一个是设计师从LAN上的不同机器访问.

Conf:php,apache,windows xp,mysql.

文档根目录:d:\ www\xampp\htdocs.所有项目都在此作为子文件夹.

我已经设置了虚拟主机,因此我不会将所有项目作为http:// localhost/foldername访问,而是以http:// foldername的形式访问.

但是对于在其他系统中的设计者,他必须访问http:// computername/foldername

例如,让我在项目工资单中工作.我将以http:// payroll的形式访问它,但我的设计师将以http:// computername/payroll的形式访问它.

我想做的是我希望设计师以我访问的方式访问.那是http:// payroll.

所以在设计器系统中,当服务器名称是工资单时,我希望它被定向到我的机器然后到项目文件夹.因此,如果他提供http:// payroll,那么我系统中的应用程序应该为他运行.

我已在设计器系统中设置hosts文件以指向我的机器.所以这项工作已经完成,当他给出工资单时,我的http:// localhost正在出现.

我应该怎么做,设计师可以访问我的项目,如http:// payroll form他的系统?

Tom*_*kas 7

设计人员必须将您的IP地址添加sitename到他的主机文件中,因为没有它,他的浏览器将不知道在哪里寻找该网站.它可能看起来像这样:

12.34.56.78 sitename1
12.34.56.78 sitename2
12.34.56.78 repeat.for.each.sitename
...
Run Code Online (Sandbox Code Playgroud)

如果您的VirtualHost未绑定到特定IP地址,这可能就足够了.这不起作用:

NameVirtualHost 127.0.0.1:80

<VirtualHost 127.0.0.1:80>
    ServerName sitename1
    ...
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

它应该是:

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName sitename1
    ...
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

这样,sitename每当看到带有主机名的请求时,apache就会为调用的站点提供服务,sitename如果它来自同一台计算机则无关紧要.