ich in meiner Global.asax
Datei des folgenden Code bin mit für url-Rewriting:301 umleiten ursprüngliche URL-Anfrage weitergeleitet URL
routes.MapRoute(
"BlogArticle",
"Blog/Article/{filename}",
new { controller = "Blog", action = "Article" }
);
Das bedeutet, die folgende URL:
/Blog/Artikel/Blog-Artikel-Titel
wird die folgende Aktion laden:
/Blog/Artikel? Filename = Blog-Artikel-Titel
ich, dass der ursprüngliche URL-Pfad meiner Seite geladen wird noch bemerkt habe.
Dies könnte zu Problemen führen, wenn das Umschreiben der URL der Website Monate nach dem Start der Website hinzugefügt wurde. Google hat die ursprünglichen URLs bereits gecrawlt. Wenn nun die neuen URLs auf der Website gecrawlt werden, wird dies als duplicate content eingestuft.
Ich dachte, dass die ursprüngliche URL jetzt automatisch eine Umleitung auf die neu geschriebene URL, aber es tut nicht.
Ich denke es würde Sinn machen, dass so etwas in den Kern von ASP.NET MVC eingebaut wird, da ich keinen Vorteil sehe, dass die ursprüngliche URL noch verfügbar ist und nicht an die neu geschriebene URL weitergeleitet wird . Gibt es einen Grund, warum das nicht gemacht wurde?
Wie kann ich verhindern, dass die ursprüngliche URL den Inhalt lädt? Gibt es einen Weg, wie ich es zu 301 permanent redirect zu der neu geschriebenen URL bekommen kann?
Ist das das Problem von mehreren URLs für denselben Inhalt lösen, oder ist dies hilft mir nur den Code aufgeräumt? – Curt
Mabye Ich mississibod Ihre Frage, dies hilft Ihnen, eine sauberere URL zu erhalten, wenn Sie diese Route mehr als eine Aktion behandeln möchten, die Sie "Blog/{Article}/{Dateiname}", neu haben könnten. – mattematico