Um die Apache-Direktiven und den Virtual-Host anzulegen benötigen wir wieder erhöhte Privilegien.
sudo su
oder
su
Damit die von Drupal benutzte .htaccess funktioniert legen wir die Datei /etc/apache2/conf.d/drupal.conf mit folgendem Inhalt an:
Um Drupals cron.php vor unberechtigtem Zugriff zu schützen, tragen wir in /etc/apache2/conf.d/drupal.conf noch die folgende Passage ein:
In der ersten Allow-Direktive wird per CIDR-Notation der Zugriff vom kompletten VPN gewährt.
In der zweiten wird der Zugriff von localhost aus erlaubt.
Entscheidend ist aber, daß die IP-Adresse des Server(die 3.te Direktive) gelistet ist, von hier wird cron.php per Cronjob aufgerufen,
Damit unsere /etc/apache2/conf.d/drupal.conf wirksam wird, muß der Webserver auch hier die Konfiguration neu einlesen:
Mein erster Gedanke war, die CHANGLOG.txt mit in Direktive für die Absicherung von Drupals cron.php zu nehmen um diese Datei ebenso vor fremden Blicken zu schützen...
Aber nach überprüfen der Konfiguration mit
kam der folgende Fehler:
Zu praktisch gedacht, doch ein eigenes Statement:
Nachdem der Configtest durchgelaufen ist muss der Webserver neu gestartet werden.
Anlegen der Datei /etc/apache2/sites-available/example.com.localhost.conf,
auch hier ist foobar wieder durch den eigenen Benutzernamen zu ersetzten, DocumentRoot zeigt auf den symbolischen Link, welcher wiederum auf die Wurzel der Drupal-Installation zeigt.
Analog zur Aktivierung des rewrite-Moduls, werden auch hier wieder symbolische Links gesetzt und zwar von /etc/apache2/sites-available nach /etc/apache2/sites-enabled.
Nach den letzten Schritten müssen wir den den Webserver neu starten, damit er seine Konfiguration erneut einließt und die angelegten Direktiven wirksam werden.