我在Windows 8主机上的Mint VM上运行Apache,因此可以将其用于Drupal开发。我在中创建了VirtualHost条目,/etc/apache2/apache2.conf
因此可以将其www.mysite.dev
用作开发URL,并hosts
在来宾主机上设置文件。如果需要的话,部署的目标平台是Acquia。
我遇到的问题是,当在来宾中使用浏览器访问时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是我在VirtualBox中创建的仅主机网络上VM的IP地址。(192.168.44.44是从我尝试Vagrant时开始的,但是共享文件夹的性能太慢了。我认为不是学习Vagrant只是在乱搞,我不如直接跳过去!)
我怀疑我遇到的两个问题有关。所以我的问题是:如何解决这两个问题,以便在从主机浏览和从来宾浏览时都能获得所需的内容?
谢谢!
编辑我针对路径问题得到的特定错误是The requested URL [...] was not found on this server.
新答案:这个答案解决了两个问题。
<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>
我仍在研究另一部分。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句