我不确定为什么我得到以下错误时重新启动Apache:
Invalid command 'VirtualDocumentRoot', perhaps misspelled or defined by a module not included in the server configuration Action 'start' failed.
它指的是这个片段:
<VirtualHost *:80> ServerAdmin [email protected] VirtualDocumentRoot /local/www/staging/%1 ServerAlias *.staging.mydomain.com </VirtualHost>
我认为这是一个拼写错误,但它是从我的另一台服务器直接复制。 它在那里完美。 有任何想法吗?
文档build议该指令由模块vhost_alias提供。 你应该确保你有
LoadModule vhost_alias_module modules/mod_vhost_alias.so
configuration指令在服务器的configuration文件中不起作用。
我有和安迪一样的错误,但就我而言,情况有些不同。 从MadHatter的回答中,我可以想出这个问题。
我的apache2服务器有点不同。 它有2个目录,即/etc/apache2/mods-available & /etc/apache2/mods-enabled 。 在目录mods-available你会看到一个可载入的模块configuration文件的列表,在这种情况下,我看到一个名为vhost_alias.load的文件,其中包含configuration为
LoadModule vhost_alias_module /usr/lib/apache2/modules/mod_vhost_alias.so
所以,我用下面的命令来启用这个configuration:
sudo a2enmod vhost_alias