我们在networking中有更多的电脑。 在虚拟服务器上的一台PC上运行一个Intranet应用程序:
<VirtualHost 127.0.0.1> DocumentRoot "D:\data\o\application\root" ServerName application </VirtualHost>
这是一个Zend Framework应用程序。 这就是为什么它需要虚拟服务器。 我们在所有PC上运行Apache作为networking服务器。
如果PC有名字,比如说“johndoe-pc”,我如何从内部网的另一台PC访问这个应用程序?
编辑:
这是来自httpd.conf的完整虚拟主机configuration:
NameVirtualHost 127.0.0.1 #D:\data\o is document roo of the Apache web server <VirtualHost 127.0.0.1> DocumentRoot "D:\data\o" ServerName johndoe-pc </VirtualHost> <VirtualHost 127.0.0.1> DocumentRoot DocumentRoot "D:\data\o\application\root" ServerName application </VirtualHost>
在应用程序所在的PC上,我可以通过input以下命令来访问它:
http://application
用*replace127.0.0.1
<VirtualHost *> DocumentRoot "D:\data\o\application\root" ServerName application </VirtualHost>
但取决于你的apacheconfiguration的其他部分,它可能无法正常工作,试试看。 不要忘记重新启动Apache
如果您没有运行DNS服务器,则可以通过服务器的IP直接访问此虚拟主机。 我认为你在文章中提到的名字是NetBIOS名字。 您将需要一个DNS名称。 如果您不想运行DNS服务器,只需将Web服务器的名称和IP放入工作站的所有主机文件中即可。 在Windows上,您可以在C:\ WINDOWS \ system32 \ drivers \ etc \ hosts中find它们。
如果您不想更改Apacheconfiguration,请在该计算机上安装SSHd,并使用ssh -L80:serverip:80端口转发,其中serverip是运行Apache的计算机的IP。
然后,您将可以通过http:// localhost /访问该应用程序。
然而,我build议你改变你的Apacheconfiguration,因为使用这个解决scheme,每个用户都需要打开一个到那台计算机的SSH会话。