Solución:
Terminé usando los siguientes sitios:
http://blogs.msdn.com/b/carlosag/archive/2008/09/02/iis7urlrewriteseo.aspx
y
http://forums.iis.net/t/1162450.aspx
o básicamente el siguiente código en mi archivo web.config usando el módulo de reescritura de URL IIS7 que la mayoría de los sitios alojados ofrecen ahora (en este caso estoy usando GoDaddy):
<system.webServer>
<rewrite>
<rules>
<rule name="RewriteASPX">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="{R:1}.aspx" />
</rule>
</rules>
</rewrite>
</system.webServer>
Otra forma un poco más moderna de hacer esto es usando Microsoft.AspNet.FriendlyUrls. En Global.asax.cs agregue:
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
RouteConfig.RegisterRoutes(RouteTable.Routes);
y en el archivo RouteConfig
public static class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
var settings = new FriendlyUrlSettings();
settings.AutoRedirectMode = RedirectMode.Permanent;
routes.EnableFriendlyUrls(settings);
}
Otra solución más simple para lograr lo mismo:
Coloque las siguientes líneas de código en su archivo global.ascx:
void Application_BeginRequest(object sender, EventArgs e)
{
String fullOrigionalpath = Request.Url.ToString();
String[] sElements = fullOrigionalpath.Split("https://foroayuda.es/");
String[] sFilePath = sElements[sElements.Length - 1].Split('.');
if (!fullOrigionalpath.Contains(".aspx") && sFilePath.Length == 1)
{
if (!string.IsNullOrEmpty(sFilePath[0].Trim()))
Context.RewritePath(sFilePath[0] + ".aspx");
}
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)