"mod_rewrite" ist ein Apache-Modul, um URLs zu manipulieren. Mit der RewriteEngine des Apache-Webservers ist es möglich, die angeforderte URL anhand von Regeln "umzuschreiben" (en: to rewrite). Basierend auf einem Parser für Reguläre Ausdrücke kann die angeforderte URL manipuliert werden.
Als erstes muss das Modul aktiviert werden
sudo a2enmod rewrite
Das Verzeichnis für die Prozess-ID fehlt eventuell, man muss es daher mit
sudo mkdir -p /var/run/apache2 sudo chown -R www-data /var/run/apache2
anlegen. Schließlich muss die Konfiguration von Apache wieder neu eingelesen werden
sudo /etc/init.d/apache2 force-reload
Üblicherweise wird die Rewrite-Bedingungen direkt über .htaccess-Dateien in den entsprechenden Verzeichnissen des Webservers festgelegt.
RewriteEngine on RewriteCond ...
Um das Modul in .htaccess-Dateien zu aktivieren, muss meist noch die Datei /etc/apache2/sites-enabled/000-default angepasst werden. Dazu muss die Datei in einem Editor mit Root-Rechten geöffnet werden [2]:
Anschließend muss die letzte Zeile in dieser Passage
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride Nonegeändert werden. Um das Umschreiben von URLs zu erlauben, muss das "None" durch "FileInfo" ersetzt werden. Andere mögliche Werte können auf der Apache Webseite
nachgelesen werden.
Oftmals wird z.B. gewünscht, dass gewisse Seiten nur über https erreicht werden können. Ein klassisches Beispiel sind Webmailer wie Squirrelmail oder RoundCube Webmail
.
In der Datei /etc/apache2/sites-available/default müssen dafür z.B. die Zeilen
RewriteEngine on
RewriteRule ^/webmail(.*)$ https://%{SERVER_NAME}/webmail$1 [L,R]
RewriteLog "/var/log/apache2/rewrite.log"
RewriteLogLevel 2hinzugefügt [2] werden. Hier würde http://domain.tld/webmail automatisch auf https://domain.tld/webmail umgeleitet werden.
Über die Regel
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^123.456.789. [OR] könnte man z.B. einen kompletten IP-Bereich wie 123.456.789.* komplett aussperren.
Diese Revision wurde am 1. Juni 2011 um 13:26 Uhr
von ubot erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet:
Netzwerk, Server, Internet
2004 – 2011 ubuntuusers.de • Einige Rechte vorbehalten