2012-04-18 18 views
24

He estado usando el MiniProfiler para medir el rendimiento del sitio. Cuando actualicé de la versión 1.9 a la 2.0, dejó de funcionar. Cambié el espacio de nombres de MvcMiniProfiler a StackExchange.Profiling. Pero cuando me carga una página, violinista muestra que hay un error 404 para la siguiente petición:MiniProfiler no puede encontrar jquery

GET /local/mini-profiler-resources/jquery.1.7.1.js?v=tNlJPuyuHLy/d5LQjyDuRbWKa0weCpmO3xkO6MH4TtA= HTTP/1.1

Esto evita que los resultados se representen en la página.

para obtener la versión 1.9 del MiniProfiler a trabajar, que tenía que tener las siguientes entradas en el archivo web.config (como se describe en this post):

<system.webServer> 
    <handlers> 
     <add name="UrlRoutingModule1" path="mini-profiler*.js" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" /> 
     <add name="UrlRoutingModule2" path="mini-profiler*.css" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" /> 
     <add name="UrlRoutingModule3" path="mini-profiler*.tmpl" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" /> 
    </handlers> 
    </system.webServer> 

He tratado de conseguir MiniProfiler 2.0 para funcionar con los incluidos en el archivo de configuración y con ellos excluidos, ninguno de los dos funcionó.

Esto se ejecuta en mi máquina de desarrollo en IIS Express.

Mi aplicación es una aplicación WebForms que utiliza la seguridad de los formularios.

¿Cómo puedo resolver esto?

+0

puede intentar con lo último de github –

+1

Lo probé con la última fuente de GitHub y todavía tengo el problema. – epotter

+0

Cuando intento navegar a http: // localhost: 43947/local/mini-profiler-resources/results-index, obtengo errores 404 en todos los elementos en el directorio mini-profiler-resources. (includes.js, list.js, list.css, jquery.tmpl.js y list.css) – epotter

Respuesta

26

Parece que este es un problema común, sólo tiene que añadir esto a la web.config y que debería estar bien

Running MiniProfiler with runAllManagedModulesForAllRequests set to false

<system.webServer> 
... 
    <handlers> 
    <add name="MiniProfiler" path="mini-profiler-resources/*" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" /> 
    </handlers> 
</system.webServer> 
+0

Línea agregada, problema resuelto. –

0

Intente volver a registrar ASP.NET ejecutando aspnet_regiis -i desde la carpeta apropiada de .NET Framework en su directorio Windows \ Microsoft.NET. He tenido problemas similares que se resolvieron al volver a registrar los controladores ASP.NET.

Creo que tuve este problema después de instalar la funcionalidad de Servicio de archivos estáticos en IIS después de instalar .NET Framework.

1

Lo que terminé teniendo que hacer fue crear una carpeta llamada mini-profiler-resources en mi servidor y luego copiar todos los archivos de StackExchange.Profiling/UI en ella. Sin embargo, no estoy seguro de por qué funciona esto. Supongo que me falta algo de configuración del servidor, porque solo tenía que hacer esto en el sistema de producción. Todo salió bien de la caja para el desarrollo.

0

No sé sobre ASP.NET, pero en Rails Lo resolví borrando los archivos tmp/miniprofiler. Cuando volví a cargar la página, funciona.

1

para mí es empezar a trabajar cuando escribo siguiente código

protected void Application_EndRequest() 
     { 
      MiniProfiler.Stop(); 
     } 

en lugar de

protected void Application_End(object sender, EventArgs e) 
     { 
      // Code that runs on application shutdown 
     MiniProfiler.Stop(); 
     } 
0

Para solucionar este problema que tenía que cambiar el DefaultAppPool de clásico a Integrado.

Esto solucionó el problema.

Además, como estoy usando MVC4, tuve que descargar las fuentes de MiniProfiler y compilarlas con las bibliotecas MVC4.

Cuestiones relacionadas