IIS 7 Kanonische URL-Weiterleitung

8

Ich möchte, dass eine Website immer www in der Adresse hat, und erzwinge sie durch IIS Neufassung.

Zum Beispiel würde test.com zu www.test.com.

Die typische Regel für das erneute Schreiben lautet:

%Vor%

Dies erfordert jedoch, dass ich die vollständige URL meiner Website eintrage. Es funktioniert nicht für Entwicklungs- und Staging-Umgebungen mit URLs wie www.test.dev und www.test.stage.

Ist es möglich, eine IIS Rewrite-Regel zu erstellen, die alle diese Fälle behandelt?

    
Evan 02.05.2011, 12:27
quelle

4 Antworten

1

Sie haben Recht, dass die vollständige URL in der web.config sein muss. Sie haben jedoch Optionen.

  1. Sie können eine config-Transformation verwenden, damit der reguläre Ausdruck der richtigen Umgebung entspricht.

  2. Es scheint keinen Schaden zu verursachen, wenn Sie alle drei Regeln zum Umschreiben von URLs in Ihre web.config aufnehmen. Es klingt wie Ihre Umgebungen sind isoliert, so dass jede Umgebung nur eine der Regeln entsprechen würde. Das kann Ihre web.config überladen, aber nicht fürchterlich.

Ich würde mit Option 1 gehen. Informationen zu Konfigurationsumwandlungen finden Sie hier: Ссылка

    
matt.mercieca 02.05.2011, 18:00
quelle
3

Ich habe eine andere Lösung für Sie:

%Vor%     
quelle
0

Ich würde Ihnen auch eine andere Variante zum Testen in einer lokalen Umgebung vorschlagen:

  1. Fügen Sie zu c: \ Windows \ System32 \ drivers \ etc \ hosts:
  2. hinzu

127.0.0.1 www.example.com

  1. Wählen Sie im IIS-Manager die Site aus und klicken Sie mit der rechten Maustaste - & gt; Bindungen bearbeiten .. - & gt; Hinzufügen ..

  2. Geben Sie den Hostnamen ein: www.example.com

  3. Öffnen Sie cmd und führen Sie iisreset

  4. aus

Jetzt können Sie www.example.com im Browser verwenden, der localhost

zugeordnet ist     
Dzianis Yafimau 05.03.2015 08:53
quelle
-1

Es wird als gute Praxis angesehen, im Hinblick auf Suchmaschinen und Site-Traffic-Analysen immer von der nackten Domain wie mydomain.com auf die kanonische Domain www.mydomain.com umzuleiten. Diese Umleitung sollte vom Web-Server durchgeführt werden, noch bevor der Code und der Inhalt der Site erreicht werden. Um IIS bedingungslos umleiten zu können, benötigen Sie:

  • II7 Version & amp; und darüber
  • Microsoft IIS URL Rewrite 2 Modul installiert (oder unterstützt von der Hosting-Anbieter)
  • Code-Snippet gemäß dem unten stehenden Link in Ihrer Datei web.config (im Stammverzeichnis Ihrer Site)

Sie müssen beide für HTTP- und HTTPS-Anfragen umleiten. Es gibt eine klare und komplexe Lösung HIER .

    
user3104351 15.12.2013 12:52
quelle

Tags und Links