2016-05-03 7 views
1

umleiten, wie ich alte Verbindung zu neuem Link in mvcWie aus altem Link zu neuem Link in mvc

google

im Google Suchergebnis umleiten kann meine alte URL zB zwischengespeichert: www.abcd.com/product?id= 64 aber meine neue uRL ist jetzt zB: www.abcd.com/product/sample

wenn Benutzer klicken sie auf alten Link in google führen sie zu meinem neuen Link

i erstellt mein Projekt in mvc umleitet 4

+1

Wenn der Link immer noch funktioniert, was ist das Problem? Was ist in Ihrer RouteConfig, um die alte Verbindung zu stoppen? Klingt wie du willst ein ** 302 ** nicht ein 400/500 (500 ist * nicht * Notfound, Ihre Web.config wird Probleme in der Zukunft verursachen). Sie könnten eine Route hinzufügen, die mit '? Id =' als ein Literal übereinstimmt, das eine Aktion auslöst, die eine Weiterleitung zurückgibt. –

Antwort

0

Ich nehme an, dass Sie nie www.abcd.com/product?id wollen = 64, um wieder die richtige URL zu sein - das ist keine temporäre Änderung in Ihrem Routing.

Die erste Sache ist, dass Sie Ihre Controller-Methode nach wie vor die Anforderung stellen Sie sicher, müssen akzeptiert (dh die Route Config noch leitet die Anforderung an eine Controller-Methode), aber dann anstelle der Beendigung der Controller-Methode mit:

return View(model); 

Es sollte am Ende mit:

return RedirectToActionPermanent("new action", "new controller"); 

Offensichtlich irgendwie müssen Sie herauszufinden, wo zu Verfahren in Ihrem Controller zu umleiten.

Es gibt auch RedirectPermanent und RedirectToRoutePermanent Alternativen, und in allen Fällen werden Browser diese URL umleiten, um dorthin zu leiten, wo Sie sie wollen, und auch die Crawler wissen, ihre Tabellen/Ergebnisse zu aktualisieren.

Sie können Redirect mit dem Permanent verwenden, aber das wird den Suchmaschinen nichts mitteilen. Sie werden weiterhin die alten URLs crawlen.

Verwandte Themen