2014-12-05 215 views
0

我的Apache在Windows 8主机上的Mint虚拟机上运行,​​因此我可以使用VM进行Drupal开发。我在/etc/apache2/apache2.conf中创建了VirtualHost条目,因此我可以使用www.mysite.dev作为开发URL,并在来宾主机上设置hosts文件。部署的目标平台是Acquia,以防万一。apache虚拟主机在Mint虚拟机上不起作用

我遇到的问题是,当在访客中使用浏览器去http://www.mysite.dev/时,我得到我的网站,但是当我访问http://www.mysite.dev/any-non-root-path时,我得到了404。另外,当我在浏览器上使用主机去http://www.mysite.dev,我反而得到了Apache的默认主页。

/etc/apache2/apache2.conf的客人,我有:

<VirtualHost www.mysite.dev:80> 
    DocumentRoot /var/www/html/mysite/docroot/ 
    ServerName www.mysite.dev 
</VirtualHost> 

/etc/hosts的客人,我有:

127.0.0.1  localhost 
127.0.1.1  vm-name 
127.0.0.1  www.my-site.dev 

# The following lines are desirable for IPv6 capable hosts 
::1  ip6-localhost ip6-loopback 
fe00::0 ip6-localnet 
ff00::0 ip6-mcastprefix 
ff02::1 ip6-allnodes 
ff02::2 ip6-allrouters 

C:\Windows\System32\drivers\etc\hosts在主机上,我有

127.0.0.1  localhost 
192.168.44.44 www.drupal7.dev 
192.168.44.45 www.mysite.dev 

192.168.44.45是主机专用网络上的VM的IP地址I c在VirtualBox中使用。 (192.168.44.44是从我尝试Vagrant的时候开始的,但是共享文件夹的性能太慢了,我觉得不是学习Vagrant只是为了捣乱,我不如直接跳到废物!)

我怀疑我遇到的两个问题是相关的。所以我的问题是:如何解决这两个问题,以便在从主机浏览并从客人浏览的同时获得我想要的内容?

谢谢!

编辑特定的错误我得到的路径问题是The requested URL [...] was not found on this server.

回答

0

新建答案:这个答案解决了这两个问题。

<VirtualHost 192.168.44.45 127.0.0.1> 
    DocumentRoot /var/www/html/site-name 
    ServerName www.site-name.dev 
    <Directory "/var/www/html/site-name/docroot/"> 
     AllowOverride All 
    </Directory> 
</VirtualHost> 

所以这就是Spock先生的答案!

原创答案因此,周一早上的新面貌让我成为了答案的一部分。我想这确实是两个问题。

对非根URL的修复是添加一个目录元素。见https://www.drupal.org/node/1038

<VirtualHost www.site-name.dev:80> 
    DocumentRoot /var/www/html/site-name 
    ServerName www.site-name.dev 
    <Directory "/var/www/html/site-name/docroot/"> 
     AllowOverride All 
    </Directory> 
</VirtualHost> 

我还在寻找其他部分。