it-swarm.com.de

Der virtuelle Host funktioniert nicht wie erwartet, wenn ich die .dev-Domain-Endung verwende

Ich mache ein Laravel Projekt und muss einen virtuellen Host example.dev in meinem System einrichten. Dafür habe ich eine Kopie von 000-default.conf erstellt und sie als example.dev.conf bezeichnet und in /etc/Apache2/sites-available abgelegt. Der Inhalt der Datei ist unten angegeben (Kommentare entfernt):

<VirtualHost *:80>
    <Directory /var/www/html/example/public/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>

    ServerName example.dev
    ServerAlias www.example.dev

    ServerAdmin [email protected]
    DocumentRoot /var/www/html/example/public

    ErrorLog ${Apache_LOG_DIR}/error.log
    CustomLog ${Apache_LOG_DIR}/access.log combined
</VirtualHost>

Dann habe ich die Site mit dem Befehl a2ensite aktiviert und 000-default.conf mit dem Befehl a2dissite deaktiviert. Dann wird mein Projekt geöffnet, wenn ich localhost (/ var/www/html) in meinem Browser versuche und nicht example.dev. Der virtuelle Host example.dev erzeugt in Browsern immer den Fehler "Die Site kann nicht erreicht werden".

Irgendwelche Vorschläge?

1
Anoop S

Domain-Endung der ersten Wahl unterscheidet sich von .dev. Letztes Jahr hat Google .dev, .foo und einige andere Domain-Endungen gekauft. Jetzt ist die Weiterleitung zu https:// in einigen Browsern fest programmiert. Weitere Details finden Sie in diese hilfreiche Antwort .

Bearbeiten Sie dann Ihre /etc/hosts -Datei auf diese Weise (weitere Details finden Sie in diese Antwort ):

127.0.0.1   localhost example.local www.example.local

Bearbeiten Sie dann Ihre <virtual-Host>.conf -Datei wie folgt:

<VirtualHost *:80>

    ServerName example.local
    ServerAlias www.example.local
    ServerAdmin [email protected]

    DocumentRoot /var/www/html/example/public
    <Directory /var/www/html/example/public/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${Apache_LOG_DIR}/error.log
    CustomLog ${Apache_LOG_DIR}/access.log combined

</VirtualHost>

Laden Sie nun die Apache-Konfiguration neu und versuchen Sie, auf http://example.local zuzugreifen.

1
pa4080

Ich hatte das gleiche Problem wie beim Benennen aller meiner Testsites .dev - das Ändern aller meiner /etc/Apache2/sites-available/ -Konfigurationsdateien (und der lokalen Hosts-Datei) gemäß der Antwort von pa4080 hat es für mich behoben.

Verwenden Sie a2dissite, um die alten Konfigurationen zu entfernen (bevor Sie die Dateien löschen), und a2ensite, um die neuen zu aktivieren.

Stellen Sie sicher, dass Sie Apache mit dem Dienst Apache2 reload neu laden.

1
sigil