Apache mod rewrite aktivieren und nutzen: Unterschied zwischen den Versionen
Mhe (Diskussion | Beiträge) |
Mhe (Diskussion | Beiträge) |
||
Zeile 2: | Zeile 2: | ||
Das Apache-Modul ''mod_rewrite'' ermöglicht es, Internetadressen (URLs) intern "umzuschreiben" (rewrite). Ihr Besucher greift so auf eine nicht real existierende URL zu, die der Webserver anhand Ihrer Regeln auf den echten Pfad umleitet, ohne dass es der Besucher merkt. | Das Apache-Modul ''mod_rewrite'' ermöglicht es, Internetadressen (URLs) intern "umzuschreiben" (rewrite). Ihr Besucher greift so auf eine nicht real existierende URL zu, die der Webserver anhand Ihrer Regeln auf den echten Pfad umleitet, ohne dass es der Besucher merkt. | ||
=== | ===Beispiel Pfad-Vereinfachung=== | ||
Sie benutzen einen Seiten-Genarator, der eine Liste von Links (z.B. Produkte) aus einer Kategorie auflistet. Hierfür lautet Ihre Adresse z.B. ''www.BeispielDomain.eu/show-products.php?action=list&category=Unterhaltung'' | Sie benutzen einen Seiten-Genarator, der eine Liste von Links (z.B. Produkte) aus einer Kategorie auflistet. Hierfür lautet Ihre Adresse z.B. ''www.BeispielDomain.eu/show-products.php?action=list&category=Unterhaltung'' | ||
Zeile 11: | Zeile 11: | ||
Schöner wäre hier z.B. die URL ''www.BeispielDomain.eu/Produkte/Unterhaltung'' um die genannten Nachteile zu beheben. | Schöner wäre hier z.B. die URL ''www.BeispielDomain.eu/Produkte/Unterhaltung'' um die genannten Nachteile zu beheben. | ||
===Konfiguration=== | ====Konfiguration==== | ||
Natürlich lassen sich im folgenden Beispiel analog auch beliebig andere Verzeichnisnamen verwenden. Das Umschreiben der URLs geschieht für den Benutzer automatisch und transparent. | Natürlich lassen sich im folgenden Beispiel analog auch beliebig andere Verzeichnisnamen verwenden. Das Umschreiben der URLs geschieht für den Benutzer automatisch und transparent. | ||
# Erstellen Sie mit einem Text-Editor die u.g. Server-Konfiguration mit dem Dateinamen ''.htaccess'' | # Erstellen Sie mit einem Text-Editor die u.g. Server-Konfiguration mit dem Dateinamen ''.htaccess'' | ||
# Speichern Sie die Text-Datei im Hauptverzeichnis Ihres Webservers (''/htdocs''). | # Speichern Sie die Text-Datei im Hauptverzeichnis Ihres Webservers (''/htdocs''). | ||
====Server-Konfiguration (Inhalt für die ''.htaccess''-Datei)==== | |||
RewriteEngine On | RewriteEngine On | ||
RewriteCond %{REQUEST_FILENAME} !-f | RewriteCond %{REQUEST_FILENAME} !-f |
Version vom 22. April 2008, 21:41 Uhr
Vorlage:KB Das Apache-Modul mod_rewrite ermöglicht es, Internetadressen (URLs) intern "umzuschreiben" (rewrite). Ihr Besucher greift so auf eine nicht real existierende URL zu, die der Webserver anhand Ihrer Regeln auf den echten Pfad umleitet, ohne dass es der Besucher merkt.
Beispiel Pfad-Vereinfachung
Sie benutzen einen Seiten-Genarator, der eine Liste von Links (z.B. Produkte) aus einer Kategorie auflistet. Hierfür lautet Ihre Adresse z.B. www.BeispielDomain.eu/show-products.php?action=list&category=Unterhaltung
- Die URL ist schlecht im Gedächtnis zu behalten
- Manche Suchmaschinen indizieren solche URLs falsch
- Angreifer erkennen den direkten Zugriff auf Ihr PHP-Script
Schöner wäre hier z.B. die URL www.BeispielDomain.eu/Produkte/Unterhaltung um die genannten Nachteile zu beheben.
Konfiguration
Natürlich lassen sich im folgenden Beispiel analog auch beliebig andere Verzeichnisnamen verwenden. Das Umschreiben der URLs geschieht für den Benutzer automatisch und transparent.
- Erstellen Sie mit einem Text-Editor die u.g. Server-Konfiguration mit dem Dateinamen .htaccess
- Speichern Sie die Text-Datei im Hauptverzeichnis Ihres Webservers (/htdocs).
Server-Konfiguration (Inhalt für die .htaccess-Datei)
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^Produkte/(.*)$ /show-products.php?action=list&category=$1 [PT,L,QSA]