Geçersiz komut 'VirtualDocumentRoot'


13

Apache yeniden başlatıldığında neden aşağıdaki hatayı alıyorum emin değilim:

Invalid command 'VirtualDocumentRoot', perhaps misspelled or defined by a module not included in the server configuration Action 'start' failed.

Bahsettiği snippet şudur:

<VirtualHost *:80>
        ServerAdmin help@mydomain.com
        VirtualDocumentRoot /local/www/staging/%1

        ServerAlias *.staging.mydomain.com
</VirtualHost>

Dediğim gibi bir yazım hatası olduğunu varsaydım, ama doğrudan başka bir sunucumdan kopyalandı. Orada mükemmel çalışıyor. Herhangi bir fikir?

Yanıtlar:


27

Belgeler , direktifin vhost_alias modülü tarafından sağlandığını göstermektedir. Aşağıdakilere sahip olduğunuzdan emin olmalısınız:

LoadModule vhost_alias_module modules/mod_vhost_alias.so

Sunucunun çalışmadığı yapılandırma dosyasındaki yapılandırma yönergesi.


12
Çok teşekkür ederim! Bu çözmemde bana yardımcı oldu. Gönderdiğiniz kod doğrudan çalışmadı, ancak modülü kullanarak a2enmod vhost_alias
yükledim

Bir ipucundan başlamak ve daha zor kazmak için iyi - bu şekilde mükemmellik yatıyor!
MadHatter

3

Andy'nin verdiği ile aynı hatayla karşılaştım, ancak benim durumumda durum biraz farklı. Ve MadHatter'in cevabından, sorunu tasarlayabilirim.

Apache2 sunucum biraz farklıydı. 2 dizin vardır /etc/apache2/mods-available& /etc/apache2/mods-enabled. Dizin mods-availableiçinde yüklenebilir modül yapılandırma dosyasının bir listesini görürsünüz, bu durumda vhost_alias.loadyapılandırmayı içeren bir dosya görüyorum .

LoadModule vhost_alias_module /usr/lib/apache2/modules/mod_vhost_alias.so

Böylece, bu yapılandırmayı etkinleştirmek için aşağıdaki komutu kullandım:

sudo a2enmod vhost_alias
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.