我正在尝试使用 Ubuntu 14.3 在本地计算机上开发多个基于 Drupal 的网站。因此,我当然必须编辑我的 000-default.conf 文件。当我像这样编辑它时,我能够成功地处理一个网站,但是当我尝试重新处理它以便同时开发多个网站(使用不同的代码库)时,它无法正常工作。以下是我成功用于单站点开发的内容(仅包含相关行):
ServerAdmin myemail.com
ServerName localhost/sitename
DocumentRoot /var/www/sitename
[ more code ]
<Directory /var/www/sitename>
AllowOverride All
</Directory>
这对于一次开发一个站点来说非常有效。但是,如果我将更多站点添加到我的 /var/www 目录并将我的 000-default.conf 文件更改为以下内容,我会得到一系列错误。
我遇到的一个错误是,图像不再在网站上正确显示,而是显示为占位符。我在 drupal 代码中手动引用图像,如下所示:/sites/default/files/filename。
我遇到的另一个问题是,当我这样做时,主页后面的内部页面在我的多个网站上不再起作用。主页显示正常(通常带有图像占位符,但并非总是如此),但当您单击任何链接时,您会收到“未找到”错误。
以下是更新后的、不正确工作的 000-default.conf 文件:
ServerAdmin myemail.com
ServerName localhost
DocumentRoot /var/www
[more code]
<Directory /var/www/sitename1>
AllowOverride All
</Directory>
<Directory /var/www/sitename2>
AllowOverride All
</Directory>
所以现在我必须使用第一个代码(见顶部)并且每次我想在不同网站上工作时都要更改它。一定有更好的方法!对吧?
答案1
这比这要复杂得多。您实际上需要创建多个 .conf 文件并使用 a2ensite 启用虚拟主机。
本指南应该能帮到您。或者尝试使用类似服务器导航自动完成这一切。