301 Weiterleitung in asp.net 4.0

9

Ich versuche, die URL-Weiterleitung für die Website zu implementieren, anstatt sie Seite für Seite vorzunehmen. Ich möchte es in der Datei global.asax tun. Unten ist der Code, den ich definiert habe.

Ich möchte Ссылка als meine Haupt-URL & amp; möchte eine permanente URL-Weiterleitung haben, wenn jemand Ссылка eingibt.

Leider funktioniert es nicht für die Live-Website. Kann jemand auf das Problem im Code hinweisen? Der Code erzeugt keinen Fehler.

%Vor%     
Learning 20.05.2012, 12:13
quelle

5 Antworten

14

Hauptproblem: Sie machen die oben genannten Sachen in Application_Start - was nur einmal ausgeführt wird. Sie sollten sich mit jeder Anfrage verbinden. Versuchen Sie Folgendes:

%Vor%

Ein noch besserer Ansatz wäre die URL-Umschreibung, die aus Web.Config :

heraus konfiguriert werden kann

Microsoft Rewriting-Modul - Force www auf url Oder entfernen www von url

    
MartinHN 20.05.2012, 12:14
quelle
9

Wenn Sie IIS 7 oder höher verwenden, verwenden Sie am einfachsten das httpRedirect-Element in Ihrer web.config.

%Vor%

Diese Methode ist sehr leistungsfähig, wenn Sie beispielsweise die Domain geändert haben, aber die Seiten identisch sind, müssen Sie nur hinzufügen:

%Vor%

Ich habe hier einen kleinen Artikel geschrieben: ASP.NET 301 permanente Weiterleitungen: die beste Lösung

    
Igor 11.12.2012 20:32
quelle
7

Version 4 von .NET hat tatsächlich eine verbesserte Funktion für die Implementierung einer einzelnen Seite - die redirectpermanent .

Response.RedirectPermanent(NEW_URL);

    
JNF 30.05.2012 06:13
quelle
5

Aufbauend auf vorherigen korrekten und hilfreichen Antworten, hier ein paar spezifische Beispiele. Angenommen, Sie möchten die alte Seite löschen (wie ich es getan habe), gibt es ein paar Optionen.

OPTION 1: Ändern Sie Global.asax

%Vor%

OPTION 2: Ändern Sie die Datei web.config

%Vor%     
wloescher 08.01.2014 17:00
quelle
0

Wenn Sie nicht wissen, was der Name der Anwendungsdomäne ist, verwenden Sie so etwas

%Vor%     
mohammadali ghanbari 23.01.2018 09:01
quelle