Wer lokal entwickelt, wird es kennen: localhost, localhost:8080, 127.0.0.1, 127.0.0.1:8000 usw. Wer ein wenig Abwechslung benötigt und seine lokalen Projekte über eine Domain im Browser aufrufen möchte kann es ganz einfach umsetzen. Ansonsten ist gegen localhost überhaupt nichts auszusetzen! Ich gehe wieder von unixoiden Betriebssystem aus. In diesem und meinem Fall Ubuntu 18.04.
Falls Ihr noch kein Apache2 am laufen habt, dann könnt Ihr mit folgenden Commands das tun:
sudo apt update
sudo apt upgrade
sudo apt install apache2
Ziel soll es sein ein lokalen Ordner über eine Domain (http://testshop.com) anzusprechen, statt zum Beispiel über http://localhost/testshop.com/public.
Wir legen den Ordner wie folgt an:
cd ~
sudo mkdir /var/www/testshop.dev
Jetzt ändern wir die Rechte mit chown:
sudo chown -R www-data:www-data /var/www/testshop.dev
Nun erstellen wir eine neue Apache Sites Konfigurationsdatei:
sudo nano /etc/apache2/sites-available/testshop.com.conf
In dieser kopieren wir folgenden Inhalt:
<VirtualHost testshop.dev:80>
ServerAdmin admin@testshop.com
ServerName testshop.com
ServerAlias www.testshop.com
DocumentRoot /var/www/testshop.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<Directory /var/www/testshop.com/>
AllowOverride All
</Directory>
Die Einträge haben folgende Bedeutungen:
- ServerAdmin: Hier legt man den Kontakt zum Seitenadmin fest, der bei einem Fehler mit dem Webserver dem Nutzer angezeigt wird. Somit können theoretisch Besucher den Fehler melden.
- ServerName: Die Domain die wir ansprechen wollen. Mit dem Aufrufe von http://testshop.com werden dann die Date des DocumentRoot verwendet.
- ServerAlias: Ist der alternative Domainnamen. Somit können wir unsere Seite auch mit www.testshop.com aufrufen.
- DocumentRoot: Verzeichnis, dass die Daten für diese Domain beinhaltet.
- ErrorLog & CustomLog: Fehler-Log-Datei und Aufruf-Log-Datei für diese Domain.
Nun aktivieren wir unsere neue Domainkonfiguration mit:
sudo a2ensite testshop.com.conf
und starten den Server neu:
sudo systemctl reload apache2
Kleiner Tipp! Um die Domain wieder zu deaktivieren, dann folgenden Command nutzen:
sudo a2dissite testshop.com.conf
Falls das noch nicht funktioniert, dann kurz mal:
sudo nano /etc/hosts
aufrufen und testshop.com
127.0.0.1 localhost
111.111.111.111 testshop.com
eintragen bzw. hinzufügen.
Und ab sofort könnt ihr mit testshop.com euer Projekt im Browser bestaunen und das auch noch offline. (ok, wenn ihr die Styles und Javascripte von einen CDN lädt, stimmt das nur so halb 😉
Greetz aus dem Sauerland