Riscrittura URL ASP.NET

Come posso riscrivere gli URL in ASP.NET?

Vorrei che gli utenti fossero in grado di visitare http://www.website.com/users/smith invece di http://www.website.com/?user=smith

Prova il Rigouratore Url Fusion gestito e il proxy inverso:

http://urlrewriter.codeplex.com

La regola per riscrivere questo sarebbe:

# clean up old rules and forward to new URL RewriteRule ^/?user=(.*) /users/$1 [NC,R=301] # rewrite the rule internally RewriteRule ^/users/(.*) /?user=$1 [NC,L] 

Microsoft ora fornisce un modulo di riscrittura URL ufficiale per IIS: http://www.iis.net/download/urlrewrite

Supporta la maggior parte dei tipi di riscrittura tra cui l’impostazione di variabili del server e caratteri jolly.

Esisterà anche su tutte le istanze Web di Azure immediatamente disponibili.

Ho usato un httpmodule per la riscrittura degli url da http://www.urlrewriting.net con grande successo (anche se credo che una versione molto più semplice, più semplice)

Se hai pochissime regole di riscrittura, allora le mappature di url incorporate in .NET 2.0 sono probabilmente un’opzione più semplice, ci sono alcune annotazioni di queste sul web, la 4guysfromrolla sembra abbastanza esauriente ma come puoi vedere non lo fanno supportare i mapping di espressioni regolari sono in tal modo resi abbastanza inutili in un ambiente dinamico (supponendo che “smith” nel tuo esempio non sia un caso speciale, questi non sarebbero di alcuna utilità)