Después de habilitar la aceleración de Alibaba Cloud CDN, algunos elementos de la página no se cargan porque la función Ignore Parameters elimina las cadenas de consulta antes de reenviar las solicitudes al origen. Deshabilite Ignore Parameters para restaurar el acceso.
Síntoma
Una vez habilitada la aceleración CDN para su dominio, los visitantes reportan que ciertos elementos (imágenes, scripts u otros recursos) no se cargan. El dominio funcionaba correctamente antes de aplicar la aceleración CDN.
Causa
La función Ignore Parameters está habilitada en su dominio CDN. Cuando esta función se encuentra activa, el CDN elimina todos los parámetros de la cadena de consulta de las URL antes de reenviar las solicitudes al servidor de origen. Por ejemplo:
Un visitante solicita:
https://example.com/image.jpg?version=2&size=largeEl CDN reenvía al origen:
https://example.com/image.jpg
Esto afecta el comportamiento de la caché de dos maneras:
Todas las solicitudes para el mismo recurso, sin importar los parámetros de la cadena de consulta, se tratan como idénticas y se sirven desde una única copia en caché.
Los recursos que dependen de parámetros de consulta para devolver contenido diferente (como imágenes generadas dinámicamente o recursos controlados por API) reciben respuestas incorrectas o nulas.
Si su sitio utiliza URL con parámetros después del signo de interrogación (?), la función Ignore Parameters provoca que dichas solicitudes fallen o devuelvan resultados inesperados.
Solución
Deshabilite la función Ignore Parameters para el dominio afectado.
Inicie sesión en la consola de Alibaba Cloud CDN y haga clic en Domain Names en el panel de navegación izquierdo.
Busque el nombre de dominio que desea gestionar y haga clic en Manage en la columna Actions. En la página de gestión, vaya a la pestaña Performance Optimization, localice la sección Ignore Parameters y deshabilítela.
Compruebe la solución
Después de deshabilitar Ignore Parameters, confirme que se haya restaurado la carga de elementos:
Borre la caché de su navegador y la caché CDN del dominio afectado.
Solicite un recurso mediante una URL que incluya parámetros de consulta.
Compruebe que se cargue el contenido correcto. Si su origen devuelve respuestas diferentes según los parámetros de consulta, confirme que cada variante se sirva correctamente.
Mejores prácticas
Tenga en cuenta lo siguiente para evitar problemas similares:
Mantenga un orden de parámetros uniforme. El CDN trata las URL con los mismos parámetros en distinto orden como claves de caché separadas. Por ejemplo,
image.jpg?color=red&size=largeyimage.jpg?size=large&color=redse almacenan en caché como dos objetos diferentes. Liste siempre los parámetros en el mismo orden; el orden alfabético es una convención confiable.Use mayúsculas y minúsculas de forma uniforme en los parámetros. Los nombres y valores de los parámetros distinguen entre mayúsculas y minúsculas al coincidir con la clave de caché. Use minúsculas de manera uniforme en todas sus URL.
Revise Ignore Parameters antes de habilitarla. La función Ignore Parameters es adecuada solo para recursos donde los parámetros de consulta no afectan la respuesta, como los parámetros de seguimiento añadidos a las URL de recursos estáticos. Habilitarla para recursos dinámicos o dependientes de parámetros causa este problema.