Usa la alternativa JSON de WordPress

La alternativa de lectura de WordPress reutiliza una respuesta de archivo progresivo almacenada después de que WordPress y el enrutador POM Theme hayan cargado. Es más lenta que la entrega de Apache o la PHP temprana, pero evita reconstruir la consulta del archivo y las plantillas de elementos.

Cuándo es útil la alternativa

Mantén activada WordPress read fallback cuando:

  • tu hosting no permita asignaciones de archivos personalizadas de Apache o Nginx;
  • el drop-in advanced-cache.php no esté disponible temporalmente;
  • una solicitud pase legítimamente por la ruta temprana, pero siga siendo apta en el enrutador del tema;
  • quieras una capa de compatibilidad segura durante el despliegue;
  • estés diagnosticando si el archivo almacenado en sí es válido.

Está activada por defecto como ajuste secundario, pero el interruptor maestro Progressive JSON cache también debe estar activado.

Qué ocurre en el enrutador

Cuando POM Theme recibe una ruta de archivo progresivo, no devuelve a ciegas un archivo con el mismo nombre. Reconstruye el contexto público esperado y verifica:

  • que el tipo de contenido y el modo de archivo sean válidos;
  • que el hash de contexto de la URL coincida con los ajustes actuales;
  • que el valor de elementos por página del nombre de archivo coincida con el contexto actual;
  • que el contexto sea apto para el almacenamiento en caché compartido;
  • que la solicitud no tenga parámetros de consulta cuando se intenta una lectura de caché.

POM Cache comprueba entonces el archivo almacenado correspondiente:

  • la ruta es segura y está contenida en el árbol JSON del sitio actual;
  • el archivo existe y es legible;
  • el tamaño es mayor que cero y está dentro del Maximum JSON file size;
  • el contenido se decodifica como JSON válido.

Solo entonces el enrutador lo reutiliza.

Reconoce el resultado

Un acierto de la alternativa puede incluir:

X-POM-Progressive-Archive-Cache: hit

Como WordPress ya ha cargado, no incluirá:

X-POM-Cache: Served static JSON cache from PHP; phase=early

Esa distinción ayuda a localizar la capa activa:

Cabecera Significado
X-POM-Cache: ... phase=early POM Cache devolvió el archivo antes del enrutador del tema
X-POM-Progressive-Archive-Cache: hit POM Theme reutilizó el archivo mediante la alternativa de WordPress
X-POM-Progressive-Archive-Cache: generated-cacheable WordPress renderizó dinámicamente una respuesta apta
X-POM-Progressive-Archive-Cache: generated-dynamic WordPress renderizó una respuesta que no se comparte a través de esta caché

Un acierto de Apache puede no tener ninguna cabecera de diagnóstico porque PHP no se ejecutó.

Prueba la alternativa deliberadamente

  1. Genera un archivo JSON con los ajustes de ejecución normales.
  2. Establece PHP early static serving en Disabled.
  3. Asegúrate de que las reglas JSON opcionales de Apache estén ausentes o temporalmente desactivadas.
  4. Mantén activadas Progressive JSON cache y WordPress read fallback.
  5. Solicita la URL JSON limpia exacta.
  6. Confirma X-POM-Progressive-Archive-Cache: hit.
  7. Confirma que los elementos del archivo devueltos coincidan con el sitio y el idioma actuales.
  8. Vuelve a activar la entrega temprana de PHP tras la prueba si es tu ruta de producción prevista.

No dejes el sitio en una configuración de diagnóstico más lenta por accidente.

Las lecturas y escrituras son independientes

Desactivar WordPress read fallback impide que esta capa lea un archivo. No:

  • desactiva la entrega temprana de PHP;
  • desactiva la entrega de Apache;
  • elimina el JSON existente;
  • desactiva JSON writes.

Del mismo modo, desactivar JSON writes no impide que la alternativa reutilice archivos que ya están en disco. Estos controles independientes hacen posibles las migraciones controladas, pero también pueden hacer confusa una prueba. Registra el estado de los cuatro interruptores de ejecución.

Límites de esta capa

La alternativa no puede evitar el arranque de WordPress, por lo que no es la opción de menor latencia. Tampoco puede rescatar una ruta cuyo contexto actual ya no coincide con la ruta; esa solicitud debe generarse a partir de la configuración actual.

Si cada solicitud informa generated-cacheable, comprueba que JSON writes tenga éxito y que la siguiente lectura se resuelva en el mismo sitio, idioma y ruta relativa. Si informa generated-dynamic, investiga por qué el contexto del archivo no es apto en lugar de centrarte en los permisos del sistema de archivos.

Consulta How a JSON cache request is served para conocer el orden completo de las capas y Troubleshoot progressive JSON caching para una lista de comprobación basada en síntomas.