ASP.NET MVC ¿Cómo usar las rutas cuando la aplicación se publica como un subproyecto de un dominio?

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

  •  03-07-2019
  •  | 
  •  

Pregunta

Tengo una aplicación web que funciona perfectamente cuando se depura y prueba localmente. Sin embargo, cuando publico el sitio en un servidor de producciones, el enrutamiento está desordenado. Esto se debe a que se ejecuta como un subproyecto en el servidor de producciones.

Testing:     http://localhost:xxx/
Production:  http://remotehost/webapp/

¿Cómo debo configurar el enrutamiento?

Esta es mi configuración de enrutamiento actual (la mayoría predeterminada). El servidor muestra la acción predeterminada del Controlador cuando visito http: // remotehost / webapp / . Pero cuando código el controlador ( http: // remotehost / webapp / Project / no lo hace trabajo ...

Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}")

    routes.MapRoute("ProjectsByCategory", "Project/Category/{id}", _
                    New With {.controller = "Project", .action = "ListByCategory", .id = ""}, _
                    New With {.id = "^[0-9]+"})


    routes.MapRoute( _
        "Default", _
        "{controller}/{action}/{id}", _
        New With {.controller = "Project", .action = "Index", .id = ""} _
    )

End Sub
¿Fue útil?

Solución

Me parece que podría estar relacionado con la publicación en iis 6. Hay un artículo aquí sobre eso.

Para mí, un problema similar se resolvió agregando un 'Mapa de aplicación de comodines':

  • En IIS, haga clic con el botón derecho y elija Propiedades para el directorio virtual en cuestión
  • elige la pestaña del directorio virtual
  • elige la configuración
  • haga clic en Insertar
  • ingrese la ruta a aspnet-isapi.dll (normalmente c: \ windows \ microsoft.net \ framework \ v2.0.50727 \ aspnet_isapi.dll).

Otros consejos

Por cierto, el enrutamiento parece estar funcionando a nivel de aplicación. No es necesario molestar a su nombre de dominio o nombres de directorio superiores.

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