ASP.NET Reescritura de URL


¿ Cómo reescribo las URL en ASP.NET?

Me gustaría que los usuarios puedan ir http://www.website.com/users/smith en lugar de http://www.website.com/?user=smith

Author: Mark Cidade, 2008-08-05

3 answers

Pruebe el Reescritor de Url de Fusión Administrada y el Proxy Inverso:

Http://urlrewriter.codeplex.com

La regla para reescribir esto sería:

# 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]
 23
Author: Nick Berardi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-04-27 02:19:27

Microsoft ahora envía un módulo oficial de reescritura de URL para IIS: http://www.iis.net/download/urlrewrite

Es compatible con la mayoría de los tipos de reescritura, incluida la configuración de variables de servidor y comodines.

También existirá en todas las instancias web de Azure desde el primer momento.

 5
Author: Sam Saffron,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-10-01 11:52:49

He usado un httpmodule para reescribir url desde www.urlrewriting.net con gran éxito (aunque creo que una versión mucho anterior, más simple)

Si tiene muy pocas reglas de reescritura reales, las asignaciones de url integradas en. NET 2.0 probablemente sean una opción más fácil, hay algunas de estas en la web, la 4guysfromrolla parece bastante exhaustiva, pero como puede ver, no admiten asignaciones de expresiones regulares, por lo que se entorno dinámico (suponiendo que "smith" en su ejemplo no es un caso especial, entonces estos no serían de utilidad)

 4
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-11 13:44:59