¿Cómo consigo la raíz del sitio para volver la página correcta con / ASP.NET MVC + WebForms + IIS 6 Comodín mapeo?

StackOverflow https://stackoverflow.com/questions/3782972

  •  04-10-2019
  •  | 
  •  

Pregunta

Actualmente, estoy convertir una aplicación web desde formularios web a ASP.NET MVC. El proyecto se ha convertido y IIS 6 es de configuración w / asignación de comodín. También he hecho un punto de vista MVC / controlador que funciona muy bien. Hay un problema sin embargo. Al acceder a la raíz del sitio, las patadas motor de enrutamiento en y redirige al usuario al controlador por defecto, en lugar de la configuración de página predeterminado en IIS. ¿Hay una manera de tener IIS utiliza la página predeterminada, antes de que las patadas motor de enrutamiento en?

Si no ...

he tratado de tener el controlador por defecto simplemente redirigir al usuario a la página por defecto (LoginPage.aspx). Que las obras, excepto que la autorización web.config parece pensar que el camino no está autorizado, por lo que vuelve a dirigir a la trayectoria que se parece a http:? //dev01/SampleWebApp/LoginPage.aspx ReturnUrl =% 2fSampleWebApp

Si ir al controlador por defecto directamente (http: // dev01 / SampleWebApp / default /). El usuario obtiene re-dirigido a la página de inicio de sesión con la ruta correcta

Entonces, ¿hay una manera de llegar a la raíz del sitio con la autorización pase web.config y redirección a la página de inicio de sesión w / o la ReturnUrl?

Cualquier ayuda es muy apreciada.

Gracias, Darren

¿Fue útil?

Solución 2

Así que la solución de mi problema era utilizar asignaciones de URL en el web.config bajo la etiqueta de system.Web:

<urlMappings enabled="true">
    <add url="~/" mappedUrl="~/LoginPage.aspx"/>
    <add url="~" mappedUrl="~/LoginPage.aspx"/>
</urlMappings>

"~ /" se volverá a dirigir el http:. // dev01 / SampleWebApp / ruta

"~" se volverá a dirigir el http:. // dev01 / SampleWebApp ruta

Otros consejos

en la parte superior de las rutas config en Global.asax:

routes.IgnoreRoute("LoginPage.aspx");

o

routes.IgnoreRoute("/");

no lo he probado, pero una de esas 2 opciones debería funcionar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top