Quando dobbiamo modificare permanentemente l'URL di una pagina è sicuramente una buona pratica quello di fare in modo che il server continui comunque a rispondere alle richieste che provengono al vecchio indirizzo, ridirigendo al nuovo solitamente tramite una Response.Redirect:
public void Page_Load(object sender, EventArgs e) { Response.Redirect("~/MyNewUrl.aspx"); }
Il problema di questa soluzione è che, purtroppo, restituisce un codice HTTP 302, ad indicare che il redirect è solo temporaneo e, pertanto, il nuovo indirizzo non viene correttamente memorizzato dai motori di ricerca che continueranno ad indicizzare il vecchio.
A partire da ASP.NET 4.0, è disponibile il metodo Response.RedirectPermanent, che invece restituisce un codice HTTP 301 che attesta la natura definitiva del redirect, comunicando così ad un motore di ricerca di aggiornare i dati in suo possesso con il nuovo URL:
public void Page_Load(object sender, EventArgs e) { Response.RedirectPermanent("~/MyNewUrl.aspx"); }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Implementare il throttling in ASP.NET Core
Routing statico e PreRendering in una Blazor Web App
Load test di ASP.NET Core con k6
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Short-circuiting della Pipeline in ASP.NET Core
Registrare servizi multipli tramite chiavi in ASP.NET Core 8
Usare un KeyedService di default in ASP.NET Core 8