Problema Cache con Asp.net
Publicado por Ernes (1 intervención) el 18/12/2014 23:37:10
Buenas noches. Tengo un problema y a ver si alguien me puede ayudar.
Tengo un servidor web Asp.net y quiero poner la expiración de la cache en 31 días mediante el archivo web.config.
Lo que he encontrado es poner esta línea de código dentro de web.config.
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="150.00:00:00" />
</staticContent>
El problema es que al poner este código las páginas en los teléfonos móviles no se ve y me da error 500. Para los PC sale todo bien, la cache si que expira el tiempo que pongo. Lo he comprobado en el pagspeed de google y con mi teléfono y nada.
Otro problemilla que tengo es que tengo alguna web con espacios en blanco y en los navegadores se ve como %20. ¿Hay alguna solución para cambiar los espacios en blanco por guinoes (-) desde el web.config?
Os dejo el web.config completo que yo tengo
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
<system.webServer>
<rewrite>
<rules>
<rule name="Convert to lower case" stopProcessing="false">
<match url=".*[A-Z].*" ignoreCase="false"/>
<conditions>
<!-- The following condition prevents rule from rewriting requests to .axd files -->
<add input="{URL}" negate="true" pattern="\.axd$"/>
</conditions>
<action type="Redirect" url="{ToLower:{R:0}}" redirectType="Permanent"/>
</rule>
</rules>
</rewrite>
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="150.00:00:00" />
</staticContent>
</system.webServer>
</configuration>
Gracias a todos por vuestra ayuda de antemano y un saludo
Tengo un servidor web Asp.net y quiero poner la expiración de la cache en 31 días mediante el archivo web.config.
Lo que he encontrado es poner esta línea de código dentro de web.config.
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="150.00:00:00" />
</staticContent>
El problema es que al poner este código las páginas en los teléfonos móviles no se ve y me da error 500. Para los PC sale todo bien, la cache si que expira el tiempo que pongo. Lo he comprobado en el pagspeed de google y con mi teléfono y nada.
Otro problemilla que tengo es que tengo alguna web con espacios en blanco y en los navegadores se ve como %20. ¿Hay alguna solución para cambiar los espacios en blanco por guinoes (-) desde el web.config?
Os dejo el web.config completo que yo tengo
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
<system.webServer>
<rewrite>
<rules>
<rule name="Convert to lower case" stopProcessing="false">
<match url=".*[A-Z].*" ignoreCase="false"/>
<conditions>
<!-- The following condition prevents rule from rewriting requests to .axd files -->
<add input="{URL}" negate="true" pattern="\.axd$"/>
</conditions>
<action type="Redirect" url="{ToLower:{R:0}}" redirectType="Permanent"/>
</rule>
</rules>
</rewrite>
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="150.00:00:00" />
</staticContent>
</system.webServer>
</configuration>
Gracias a todos por vuestra ayuda de antemano y un saludo
Valora esta pregunta


0