启动 apache2 时警告:DocumentRoot x 不存在

启动 apache2 时警告:DocumentRoot x 不存在

我克隆了一个 rackspace 服务器,/var/www/里面有一些我不需要的额外目录。我只想删除这个服务器上不需要的网站。我认为这就像删除目录和每个目录内的所有文件一样简单。

所以我通过命令行将它们全部删除。我不得不重启服务器。在重启过程中,Apache 无法启动,因为:

DocumentRoot [/var/www/PATH/TO/DIRECTORY/] does not exist

此外,我收到一份[warn] NameVirtualHost *:80 has no VirtualHosts通知。

我的服务器正在运行 Ubuntu 11.10。

我只是想删除不再使用的目录。我该如何清除它?

答案1

启用和禁用 Apache 网站的推荐方法是使用a2ensiteand a2dissiteApache 2 启用/禁用站点)。

这两个工具的作用基本上是添加/删除 的链接/etc/apache2/sites-enabled。此类链接指向/etc/apache2/sites-available

因为您已经删除了文件,所以我建议不要仅仅禁用站点(即从中删除链接sites-enabled),还要删除所有站点配置(即从中删除链接sites-enabled和文件sites-available)。

简而言之,你应该:

  1. 查找已删除文件的站点:ls /etc/apache2/sites-enabled
  2. 禁用此类网站:rm /etc/apache2/sites-enabled/site1 /etc/apache2/sites-enabled/site2
  3. (可选)完全删除此类站点的配置文件:rm /etc/apache2/sites-available/site1 /etc/apache2/sites-available/site2

答案2

通过您发布的少量配置信息很难判断。

您需要检查您的 Apache 配置文件和虚拟主机。如果您不再使用/var/www/PATH/TO/DIRECTORY/,请禁用使用该目录的虚拟主机和/或更新您的 Apache 配置。

看:

https://help.ubuntu.com/community/ApacheMySQLPHP

https://help.ubuntu.com/12.04/serverguide/httpd.html

如果这不能解决问题,请更新您的问题并提供其他配置信息。

答案3

我找到了答案。我必须删除与我删除的文件相关的 VirtualHosts /etc/apache2/sites-available/default

相关内容