Zachowanie wirtualnego hosta Apache

1

Zdefiniowałem kilka wirtualnych hostów w moim Apache 2.4.12. Wszyscy nasłuchują na porcie 80, ale mają różne nazwy. Problem polega na tym, że mam 2 podobne hosty wirtualne, a pierwszy ładuje się, gdy próbuję uzyskać dostęp do drugiego. Co może być problemem?

host escr.dev

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName escr.dev
    ServerAlias www.escr.dev
    DocumentRoot /var/www/escr.dev/application/web/
    <Directory /var/www/escr.dev/application/web/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
    ErrorLog /var/log/apache2/escr.dev-error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    CustomLog /var/log/apache2/escr.dev-access.log combined
</VirtualHost>

host esca.dev

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName esca.dev
    ServerAlias www.esca.dev
    DocumentRoot /var/www/esca.dev/public/
    <Directory /var/www/esca.dev/public/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
    ErrorLog /var/log/apache2/esca.dev-error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    CustomLog /var/log/apache2/esca.dev-access.log combined
</VirtualHost>

Więc kiedy uzyskuję dostęp do „esca.dev”, zamiast tego ładuję host „escr.dev”.

Vit Kos
źródło
1
Czy na pewno nie otrzymujesz domyślnego hosta, ponieważ coś nie pasuje? Sprawdź, czy Host nagłówek zawiera oczekiwaną wartość.
Daniel B
Tak, jestem pewien, że mam wiele innych hostów, które mają taką samą konfigurację, ale inny katalog główny i nazwę. Jeśli zmienię nazwę serwera i alias na coś takiego jak „iesca.dev”, to działa bez zarzutu.
Vit Kos

Odpowiedzi:

0

Czy włączono dyrektywę „NameVirtualHost”?

Powinieneś odkomentować poniższe w httpd.conf:

NameVirtualHost *:80

Ta dyrektywa jest potrzebna do pracy z hostami wirtualnymi opartymi na nazwach.

slowhandsolo
źródło
Cóż, myślę, że tak nie jest, ponieważ otrzymuję ten komunikat po ponownym uruchomieniu serwera: AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/apache2.conf:226
Vit Kos