我有一个运行 VirtualBox 的 Ubuntu 12.04 系统。我将 Windows XP 安装为虚拟机,它运行良好。我配置了文件共享,运行良好。我还可以在虚拟机上的 Internet Explorer 中输入主机的 IP,主机上的 Apache 会使用默认的“It Works”默认页面提供响应。
默认情况下,当我在浏览器中输入我的 IP 地址时,如下所示:http://10.10.10.10,主机 Apache 服务器将使用/var/www用于处理请求。如果我输入:http://10.10.10.10/dev它将得到/var/www/dev这正是我期望它做的事情。
现在最棘手的部分是我找不到解决方案。我试图做的是,而不是输入:http://10.10.10.10/dev/mysite/httpdocs/我可以打字http://我的网站.dev它将像虚拟主机一样进行路由。我目前在我的 Ubuntu 主机上有一个类似的虚拟主机设置,它在主机的浏览器中运行良好,但在客户操作系统 (Windows XP) 中则不行。如果我在虚拟机/客户浏览器中输入虚拟主机 URL,它只会返回默认的/var/www/。
[新增信息]我需要此功能,以便可以在 IE 中测试 Web 应用程序。这些应用程序通常使用相对链接来获取资源和 URL 重写,而使用完整文件路径无法正确解析,因此需要一个领域名称 root。任何帮助都将不胜感激。
[所需文件]
主机操作系统(Ubuntu 12.04)
- httpd.conf:
NameVirtualHost *:80
- /etc/apache2/sites-enabled/webapp.dev:http://pastebin.com/dtfXmM4i
- 在 /etc/hosts 中:http://pastebin.com/8G3ULbGs
- .htaccess 文件:http://pastebin.com/u3iNbJsK
客户操作系统 (Windows XP)
- Windows XP Hosts 文件:http://pastebin.com/H91wyZkM
答案1
感谢@Mihai Todor 的大力帮助,我发现可以在 Windows Hosts 文件中添加以下行:
10.10.10.10/public_html/dev/myapp/httpdocs/ myapp.dev
然后在 IE 的“Internet 选项”下->連接->LAN 设置,我将主机的 IP 地址设置为端口 80 上的代理服务器,它可以工作了。
我不确定使用主机作为代理是否是处理此问题的正确方法,但它似乎有效。谢谢你的帮助。