2010-06-30 11 views
6

He seguido el artículo http://www.codeproject.com/KB/aspnet/combres2.aspx.La ruta de Combres (combres.axd) no funciona

Cuando ejecuto mi sitio no puedo hacer funcionar el combres.axd? Sé que los combres se están ejecutando ya que un archivo incorrecto en mi xml causará un error. Estoy ejecutando un sitio de formularios web ASP.NET 4.0 en Vista.

La configuración de Mis Comandos XML es.

resourceSets url="~/combres.axd" defaultDuration="30" defaultVersion="auto" defaultDebugEnabled="auto" 

He comprobado el web.config para ver todos los valores correctos. La referencia se ha agregado desde el directorio de fusión y el archivo ASX global tiene lo siguiente.

protected void Application_Start(object sender, EventArgs e) 
     { 
      RouteTable.Routes.AddCombresRoute("Combres"); 
     } 

También compruebo que el valor se crea en la fuente html.

href="/combres.axd/siteCss/309885723" 

    src="/combres.axd/siteJs/408582048" 

No obtengo un error ni nada que me ayude a rastrear el motivo por el que no funcionará o lo que pueda haber perdido. Cualquier sugerencia seria genial.

+0

Tengo el mismo error (404 no se encuentra en /combres.axd/siteCss/883839792). ¿Algunas ideas? – jao

Respuesta

1

En primer lugar, me gustaría sugerir para enganchar un log4net al registrador Combres en su web.config (no se olvide de configurar el configSection para log4net)

<log4net> 
<logger name="Combres"> 
    <level value="ALL"/> 
    <appender-ref ref="LogCombres" /> 
</logger> 

<appender name="LogCombres" type="log4net.Appender.RollingFileAppender"> 
    <file value="Combres.log.txt"/> 
    <appendToFile value="true"/> 
    <maximumFileSize value="5000KB"/> 
    <maxSizeRollBackups value="2"/> 
    <layout type="log4net.Layout.PatternLayout"> 
    <conversionPattern value="%d [%t] %-5p %c - %m%n"/> 
    </layout> 
</appender> 
</log4net> 

Y en su global.asax lanzar el configuración

log4net.Config.XmlConfigurator.Configure() 

Debe tener un registro detallado de lo que está sucediendo. Si lo que está mal no aparece, no dude en volver con alguna salida de registro

6

Tuve el mismo problema al intentar que funcione por primera vez.

Asegúrese de que la ruta Combres se agrega antes de la llamada para ignorar la ruta {resource} .axd.

correcta:

RouteTable.Routes.AddCombresRoute("Combres"); 
RouteTable.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

incorrecta:

RouteTable.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 
RouteTable.Routes.AddCombresRoute("Combres"); 
0

¿Cuál es la configuración de los módulos en web.config? Compruebe el atributo runAllManagedModulesForAllRequests.

<system.webServer> 
    <modules runAllManagedModulesForAllRequests="true"/> 
</system.webServer> 

Con una aplicación Web Forms heredados, me encontré con que no tenía esa configuración y una vez que lo puse en la ruta combres.axd trabajado.

More on my question too

0

Estos son los cambios que hice en el proyecto y se declaró para funcionar correctamente.

En el archivo Global.asax añadir estas líneas

using Combres; 

En el método Application_Start

protected void Application_Start() 
{ 
    RouteTable.Routes.AddCombresRoute("Combres");//Add this line 
    RegisterRoutes(RouteTable.Routes); 
} 

comentario la línea en el archivo Combres.cs.

0

Esto me pasó a mí también pero el problema era de Yahoo.Yui.Compressor cambiaron una firma de propiedad en su nueva versión 1.6 *.

Así que, para solucionarlo, simplemente bajé el Yahoo.Yui.Compressor a la versión 1.5.

y estoy feliz ahora :)

1

Por alguna razón, la única forma de poder solucionar mostrando CSS en modo de depuración = falsa es mediante la adición a la combres.axd acceso anónimo en web.config

<location path="combres.axd"> 
    <system.web> 
     <authorization> 
     <allow users="*" /> 
     </authorization> 
    </system.web> 
    </location> 
+0

Probablemente deberías explicar un poco en el texto de tu respuesta. –

Cuestiones relacionadas