Domain in Apache2 Server hinzufügen – Virtual Host in Ubuntu

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


Leave a Comment

Your email address will not be published. Required fields are marked *

*

*

Empfholende Artikel


Ubuntu – Firefox Sessions Backup

February 7, 2021

Wenn irgendwann mal das Internet für längere Zeit ausfallen sollte – Stichwort Cloudausfall – wäre ich gewappnet. Ich habe das Internet bei Firefox in meinen Tabs offen. Vielleicht gehört ihr auch zu denen, die über 1000 Tabs offen haben. Warum auch immer. Wahrscheinlich könnte man darüber eine Doktorarbeit schreiben. Mit dem Titel: „Persönlichkeitsanalyse anhand des […]

Bash Script – kurz mal erklärt

February 2, 2021

Heute mal eine einfache Sache, falls man sie Klever einsetzt, eine Menge Arbeit abnehmen kann. Die Rede ist vom guten alten Shell-Script. Wer ständig die gleichen Befehle absetzen muss, der kann sich doch automatisieren. Ich zum Beispiel nutze Shell Script für das Deployment Prozess. Also den fertigen Code von der Entwicklungsumgebung in die Produktionsumgebung zu […]

MySQL Datenbankserver im lokalen Netzwerk einrichten

November 19, 2020

Es kommt mal vor, dass man beim Entwickeln die Test, Entwickler Datenbank nicht auf einem Liveserver sowie auf dem lokalen Rechner einrichten möchte. Und arbeiten an der Livedatenbank sollten sowieso keine Option sein. Jedenfalls kann der Wunsch nach einer Testdatenbank, die nicht auf dem Entwicklerrechner installiert ist unterschiedliche Gründe haben. Ein häufiger Grund ist wohl, […]

SSH Authentifizierung mit dem SSH Public Key einrichten

November 16, 2020

Die schlüsselbasierte Authentifizierung in SSH wird als Authentifizierung mit öffentlichem Schlüssel / Public Key bezeichnet. Mit ssh-copy-id kann man leicht die Authentifizierung mit dem SSH Public Key einrichten. Der Prozess läuft wie folgt ab. Generieren zuerst einen SSH-Schlüssel / SSH Key Mit OpenSSH wird ein SSH-Schlüssel mit ssh-keygen erzeugt. Führe den Befehl ssh-keygen aus und […]

Ubuntu – Mit Konsole in Dateien suchen

October 8, 2020

Folgendes Szenario. Ihr habt einen Kunden der noch keine Entwicklungsumgebung für sein Projekt gebaut hat und alle Änderungen seit dem er sein Projekt – in diesem Fall war es ein Shopware Shop – am Livesystem vollzieht. WHHHAAAAATTTTTTTTT!?!? Richtig gelesen – und solche Kunden gibt es viele. Und an dieser Stelle mache ich dem Kunden auch […]

Video Dateiengröße verkleinern mit wenig wenig Qualtätsverlust

September 24, 2020

Juhu – Der nächste Film mit 6 Gigabyte und gleich kommt noch die coole Serie. So läppern sich die Gigabytes auf Gigabytes auf der Festplatte und so weiter. Eine Festplatte ist nun mal endlich und daher kommen die Speicher Probleme ganz von alleine. Wer Filme mag und sie gerne auf der Festplatte zum Abruf bereit […]