Virtual Host für Apache auf Ubuntu

Thema: Ubuntu – MariaDB – WordPress – Apache – CleanBlogg Theme.


Neuen Virtual Host für  Apache unter Ubuntu anlegen

Unter Ubuntu ist Apache so konfiguriert, dass einzelne Web-Domains und Subdomains in je einer Konfigurationsdatei definiert sind. Sie müssen in einem anderen Verzeichnis verlinkt sein und anschliessend muss der Webserver noch neu geladen werden.

Konfigurationsdatei einer WordPress-Domain

Der Code-Block zeigt eine einfache Konfigurationsdatei:

root@server/etc/apache2 # cd /etc/apache2/sites-available/
root@server/etc/apache2 # vim newblog.domain.tdl.conf
<VirtualHost *:80>
  ServerName www.newblog.domain.tdl
  ServerAlias newblog.domain.tdl
  DocumentRoot /home/user/www/newblog.domain.tdl
  ServerAdmin user@domain.tdl
  AddDefaultCharset utf-8
  ErrorLog /var/log/apache2/newblog.domain.tdl-error.log
  CustomLog /var/log/apache2/newblog.domain.tdl-access.log combined
  <IfModule mod_rewrite.c>
    <Directory /home/user/www/newblog.domain.tdl/>
      Options +FollowSymLinks
      RewriteEngine On
      RewriteBase /
      RewriteRule ^index\.php$ - [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.php [L]
    </Directory> 
  </IfModule>
</VirtualHost>

Die (grünen) verzeichnisbezogene “RewriteRule” stammt aus der .htaccess-Datei, welche mit der WordPress-Einrichtung angelegt wird. Ich habe diese Angaben lieber unter der Apache-Konfiguration und nicht im File-System verteilt. Die .htaccess-Datei kann in diesem Fall anschliessend gelöscht werden. Blau die Ergänzung um ggf. gesperrte RewriteRules im  betreffenden Bereich zu ermöglichen.

Das Prinzip

Unter Ubuntu ist Apache so konfiguriert, dass einzelne Web-Domains und Subdomains in je eine Konfigurationsdatei unter /etc/apache2/sites-available/ definiert sind. Damit diese für Apache verfügbar sind muss eine Datei

/etc/apache2/sites-available/newblog.domain.tdl.conf

noch unter

/etc/apache2/sites-enabled/newblog.domain.tdl.conf

verlinkt werden. Das  geht so:

root@server /etc/apache2/sites-available # ln -s newblog.domain.tdl.conf ../sites-enabled/newblog.domain.tdl.conf

Zuletzt muss der Webserver die zusätzliche Konfigurationsdatei einlesen:

root@server # /etc/init.d/apache2 restart

Es geht auch reload. Meldet der Server Fehler beim Neustart, so sind sie wahrscheinlich in der/den soeben editierten .conf-Dateien zu suchen.


Schalter und Stromleitung

No Comments

Leave a Comment