Benutzerfreundliche URL – Regelvorlage

von IIS-Team

Regelvorlagen bieten eine einfache Möglichkeit zum Erstellen einer oder mehrerer Umschreibungsregeln für ein bestimmtes Szenario. Das URL-Rewrite-Modul enthält verschiedene Regelvorlagen für einige gängige Verwendungsszenarien. Zusätzlich zu dieser Benutzeroberfläche des URL-Rewrite-Moduls steht ein Framework zum Einfügen benutzerdefinierter Regelvorlagen bereit. In dieser exemplarischen Vorgehensweise werden Sie durch die Verwendung der Regelvorlage „Benutzerfreundliche URL“ geführt, die im URL-Rewrite-Modul enthalten ist.

Voraussetzungen

Für diese exemplarische Vorgehensweise wird Folgendes vorausgesetzt:

  1. IIS 7.0 oder höher mit aktiviertem ASP.NET-Rollendienst;
  2. Installiertes Release des URL-Rewrite-Modul 2.0

Einrichten einer Testwebseite

Wir verwenden eine einfache „asp.net“-Testseite, um zu überprüfen, ob die von der Vorlage erstellten Regeln korrekt funktionieren. Die Testseite liest einfach die Webservervariablen und gibt ihre Werte im Browser aus.

Kopieren Sie den folgenden ASP.NET-Code und fügen Sie ihn in eine Datei namens „article.aspx“ im Ordner %SystemDrive%\inetpub\wwwroot\ ein:

<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>URL Rewrite Module Test</title>
</head>
<body>
    <h1>URL Rewrite Module Test Page</h1>
        <table>
            <tr>
                <th>Server Variable</th>
                <th>Value</th>
            </tr>
            <tr>
                <td>Original URL: </td>
                <td><%= Request.ServerVariables["HTTP_X_ORIGINAL_URL"] %></td>
            </tr>
            <tr>
                <td>Final URL: </td>
                <td><%= Request.ServerVariables["SCRIPT_NAME"] %>?<%= Request.ServerVariables["QUERY_STRING"] %></td>
            </tr>
            <tr>
                <td>Public Link: </td>
                <td><a href="<%= Request.ServerVariables["SCRIPT_NAME"] %>?<%= Request.ServerVariables["QUERY_STRING"] %>">Link URL</a></td>
            </tr>
        </table>
    </body>
</html>

Navigieren Sie nach dem Kopieren dieser Datei zu http://localhost/article.aspx, und überprüfen Sie, ob die Seite korrekt in einem Browser gerendert wurde.
Screenshot of a browser screen displaying the U R L Rewrite Module Test Page.

Verwenden einer Regelvorlage zum Generieren von Umschreibungsregeln

Mit der Regelvorlage „Benutzerfreundliche URL“ können Sie Umschreibungs-, Umleitungs- und Ausgangsregeln generieren, die URLs für Ihre dynamische Webanwendung benutzerfreundlicher machen und für Suchmaschinen optimieren. In der Regel berücksichtigen dynamische Webseiten beim Generieren eines Ausgabe-HTML-Codes Abfragezeichenfolgenparameter. Die URLs mit Abfragezeichenfolgen (z. B. http://contoso.com/articles.aspx?year=2008&month=11) sind für Menschen nicht so einfach zu verwenden und zu kommunizieren wie einfache hierarchiebasierte URLs (z. B. http://contolso.com/articles/2008/11). Darüber hinaus können einige Suchmaschinencrawler die Abfragezeichenfolge beim Indizieren der Websiteseiten ignorieren. Mithilfe der Regelvorlage können Sie eine Umschreibungsregel generieren, die hierarchiebasierte URLs in URLs mit Abfragezeichenfolgen transformiert. Optional können Sie damit auch eine Umleitungsregel generieren, mit der Webclients mit Formular-URLs mit Abfragezeichenfolgen zu bereinigten URLs umgeleitet werden können. Darüber hinaus ist es möglich, eine ausgehende Umschreibungsregel zu erstellen, die alle URLs mit Abfragezeichenfolgen in der HTML-Antwort durch deren hierarchiebasierte URL-Entsprechungen ersetzt.

Führen Sie die folgenden Schritte aus, um die Vorlage zu verwenden:

  1. Navigieren Sie zum IIS-Manager.
  2. Klicken Sie auf „Standardwebsite“.
  3. Wählen Sie in der Featureansicht die Option „URL umschreiben“ aus.
    Screenshot of the I I S Manager window on the Default Website screen. The icon for U R L Rewrite is highlighted.
  4. Klicken Sie im Bereich „Aktionen“ auf der rechten Seite auf Regeln hinzufügen… und wählen Sie dann die Vorlage „Benutzerfreundliche URL“ aus:
    Screenshot of the Add Rules dialog box. The icon for User-friendly U R L is highlighted.
  5. Geben Sie im Dialogfeld „Regeln zum Aktivieren benutzerfreundlicher URLS hinzufügen“ ein Beispiel für eine URL mit Abfragezeichenfolgenparametern ein (http://localhost/article.aspx?id=123&title=some-title), und erweitern Sie dann die Dropdownliste mit vorgeschlagenen Optionen zum Umwandeln dieser Beispiel-URL in eine URL ohne Abfragezeichenfolge.
    Screenshot of the Add Rules to Enable User-Friendly U R L dialog box.
  6. Wählen Sie die zweite Option aus (http://localhost/article/123/some-title). Beachten Sie, dass das URL-Muster und die Ersatz-URL entsprechend aktualisiert wurden. Diese werden in der Umschreibungsregel verwendet, die von der Regelvorlage erstellt wird. Aktivieren Sie die Option „Entsprechende Umleitungsregel erstellen“, um eine Umleitungsregel zu erstellen, die verwendet wird, wenn Webclients eine interne URL zum Anfordern einer Webseite verwendet haben. Diese Clients werden zu einer entsprechenden öffentlichen URL umgeleitet.
    Aktivieren Sie außerdem die Option „Entsprechende ausgehende Umschreibungsregel erstellen“, um eine Ausgangsregel zu erstellen, die alle Instanzen interner URLs in der Antwort-HTML durch ihre öffentlichen Entsprechungen ersetzt.
    Screenshot of the Add Rules to Enable User-Friendly U R L dialog box. The corresponding public U R L field is highlighted.
  7. Klicken Sie auf „OK“, damit die Umschreibungs-, Umleitungs- und Ausgangsregeln generiert werden:
    Screenshot of the I I S Manager Window displaying the U R L Rewrite page. The inbound and outbound rules are shown.

Testen der Regel

Um die generierten Regeln zu testen, öffnen Sie einen Webbrowser, und fordern Sie die folgende URL an:

http://localhost/article/234/some-title

Die Umschreibungsregel auf dem Webserver sollte die ursprüngliche URL in „article.aspx“ geändert und „234“ sowie „some-title“ als Werte für Abfragezeichenfolgenparameter übergeben haben.

Bewegen Sie den Mauszeiger im Webbrowser über den Text „Link-URL“ (oder verwenden Sie das Menü „Seite“ –> „Quelle anzeigen…“). Beachten Sie, dass obwohl die URL für den Link ursprünglich ein Format hatte, in dem Abfragezeichenfolgenparameter verwendet wurden, dieses vom URL-Rewrite-Modul durch ein hierarchiebasiertes URL-Format ersetzt wurde.

Screenshot of a browser window displaying the U R L Rewrite Module Test Page. The redirected U R L is circled.

Außerdem wird der Browser, wenn Sie http://localhost/article.aspx?id=432&title=some-other-title anfordern, zu http://localhost/article/432/some-other-title umgeleitet.

Zusammenfassung

In dieser exemplarischen Vorgehensweise haben Sie erfahren, wie Sie mithilfe der im URL-Rewrite-Modul enthaltenen Regelvorlage „Benutzerfreundliche URL“ Umschreibungsregeln generieren. Diese Regelvorlage kann als Ausgangspunkt für das Entwerfen von Umschreibungsregeln verwendet werden, um benutzerfreundliche und für Suchmaschinen optimierte URLs für vorhandene Webanwendungen zu ermöglichen.