IIS 7.5 – Saubere URLs durch URL-Rewrite

Sicher hat sich schon der Eine oder Andere angehende Webmaster gefragt, wie so viele Webseiten die schöneren Adressen nach dem Schema http://<Domain>/<Seitenname> realisieren, ohne ständig ein „index.php“ voranführen zu müssen.

Schließlich wird ja immer eine Datei für jeden Aufruf benötigt und wahrscheinlich sieht die Verzeichnisstruktur auch nicht so aus, wie sie in der Adresse beschrieben wird.

Das Zauberwort hierfür lautet URL-Rewrite.

Dabei wird dem Webserver durch eine Konfigurationsdatei mitgeteilt, wie er mit den Aufrufen umgehen soll.
In der Regel wird hierbei immer zuerst geprüft, ob der übergebene Pfad zur Ressource existiert.
Existiert er nicht, so wird die Anfrage an ein bestimmtes Skript (wie zum Beispiel “index.php”, “index.aspx”, usw.) weitergeleitet.

Dieses Skript filtert aus dem Request den gewünschten Seitennamen heraus und generiert die Seite entsprechend.

Natürlich muss das jeweilige Skript diese Funktion auch unterstützen. Das ist zum Beispiel bei vielen CMS-Systemen der Fall. Darunter fällt auch WordPress.

Aber wie bringe ich nun meinen IIS dazu?

Als erstes benötigen wir das Modul “urlrewrite2”, welches wir über einen Doppelklick installieren.

Jetzt gehen wir in das Webroot (= Verzeichnis der Webseite) und suchen nach “web.config”. Sie öffnen wir mit einem Editor (Bsp. den Windows Editor) und fügen nach “system.webServer” folgende Zeilen ein:

<rewrite>
  <rules>
    <rule name="Web-URL-ReWrite" stopProcessing="true">
      <match url=".*" />
        <conditions>
          <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
          <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
        </conditions>
      <action type="Rewrite" url="index.php/" />
    </rule>
  </rules>        
</rewrite>

Natürlich muss bei „action“ der tatsächliche Pfad zum Skript entsprechend angepasst werden.

Nachdem wir hier fertig sind wird noch gespeichert und die Rewrite-Rule ist erstellt!

Nun kannst du deine Webseite selbst mit sauberen URLs versehen und musst kein Skript mehr angeben.



Ein Kommentar zu “IIS 7.5 – Saubere URLs durch URL-Rewrite

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.