antiguo.feadulta.com sirve WordPress en vez de Joomla (via Cloudflare) — origen OK en directo #164
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Sintoma
antiguo.feadulta.comdeberia servir el Joomla post-cutover, pero navegando normal (confirmado en incognito + hard refresh, no es cache de navegador) aterriza en el WordPress (contenido de www.feadulta.com).Verificado — el origen esta bien
SSH al servidor (134.0.10.170) y curl LOCAL forzando SNI correcto, saltandome DNS/Cloudflare:
Apache/.htaccess de
/web/antiguo/tiene el rewrite Joomla estandar + una regla custom que solo actua siHTTP_HOSTes exactamentefeadulta.com(dominio pelado), no deberia afectar aantiguo..DNS
antiguo.feadulta.com,www.feadulta.comywp-nuevo.feadulta.comresuelven las 3 a las mismas IPs anycast de Cloudflare (172.67.129.42 / 104.21.1.107) — normal, todo proxied (naranja).Lo que no pude verificar
Desde fuera (mi maquina, atravesando Cloudflare real) cualquier curl a estos dominios da 403 de bot-challenge de Cloudflare antes de llegar a nada util (headers tipo cf-cache-status no llegan a verse). No tenemos token de API de Cloudflare — solo Inma tiene acceso al dashboard.
Hipotesis
Como el origen sirve Joomla bien cuando se le pregunta directamente, pero por Cloudflare llega a WP, el problema probablemente esta en la capa de Cloudflare: un Redirect Rule / Page Rule / Origin Rule antiguo que reescribe el Host hacia el origen o redirige a nivel de edge antes de llegar a Apache, o el registro DNS de
antiguono es un A/CNAME proxied normal sino algo tipo Cloudflare Pages/Worker.Pendiente para Inma (dashboard Cloudflare)
antiguo.feadulta.comantiguoen concreto (¿A/CNAME proxied normal, o algo distinto?)Relacionado (ya resuelto en esta sesion)
Horas antes hubo otro bug:
wp-nuevo.feadulta.comquedo con directorio vacio tras elmvdel cutover, causando bucles de redirección Apache (AH00124/AH01276). Rafa borro el subdominio en cPanel y se resolvio (esas peticiones caen ahora en el vhost principal WP, que gestiona el 404 con redireccion propia a antiguo.feadulta.com). Se corrigio tambien el menu WP (Cartas > Acceso a webs anteriores > Web V2 - Joomla), que apuntaba a www.feadulta.com en vez de antiguo.feadulta.com (post ID 1, wp_navigation).Actualizacion: descartado el origen tambien en la IP publica
Opus sugirio que mi primer test (loopback 127.0.0.1 desde dentro del SSH) podia no ser representativo, porque Cloudflare conecta a la IP publica (134.0.10.170), no a loopback -- si el vhost SSL por defecto en la interfaz publica fuera el de WordPress, el origen fallaria igual aunque loopback funcionase.
Repeti el test contra la IP publica directamente, sin pasar por Cloudflare:
Resultado: correcto tambien en la IP publica. Esto descarta que sea un problema de vhost/Apache en el servidor. El problema esta aislado 100% en la capa de Cloudflare.
Pendiente para Inma (sin cambios en la lista, pero ahora con mas confianza)
antiguo: ¿A/CNAME proxied normal a la IP del server, o algo raro (CNAME a www, a Pages, a un Worker)?antiguo.antiguo.feadulta.com/*antiguo.por si hay WP cacheadoDato util para distinguir rapido cual es: si al entrar a antiguo.feadulta.com la barra de direcciones CAMBIA a www (redirect visible) es Redirect Rule/Bulk Redirect. Si la URL se queda en
antiguo.pero el contenido es WP, es Origin Rule / Worker / cache (no hay redirect, hay reescritura o servido en el edge).Investigado (Inma + Claude) — era caché stale de Cloudflare, ya resuelto
Sondeo desde fuera (máquina distinta a la tuya, atravesando Cloudflare real; esta vez sin bot-challenge):
antiguo.feadulta.com→ 301 aantiguo.feadulta.com/es/— la URL se queda enantiguo., no salta a www → descarta Redirect Rule / Bulk Redirect.befa4ebc…, 6 marcadores Joomla, 0 de WordPress,<title>Feadulta</title>.cf-cache-status: DYNAMICen 8/8 pasadas (root y/es/, PoP MAD) → va al origen cada vez, descarta Origin Rule / Worker (no hay reescritura activa).Conclusión: el síntoma era una copia de WordPress cacheada en el edge de Cloudflare bajo
antiguo.feadulta.com(residuo del cutover). Ha caducado y ahora sirve fresco del origen = Joomla. No hay regla de redirección / origen / worker implicada.Prevención (Inma la está aplicando ahora): Rules → Cache Rules → si Hostname =
antiguo.feadulta.com→ Bypass cache (el Joomla lleva sesión PHP, no debe cachearse en el edge; así no puede volver a colarse una copia WP).Con eso, se puede cerrar. 🎯
Cierre — regla de bypass desplegada y verificado
Cambio aplicado (Inma, dashboard Cloudflare):
(http.host eq "antiguo.feadulta.com")antiguo.va por un comodín*.feadulta.comproxied (el detector no ve un registro exacto "antiguo"). Elegido "Ignore and deploy rule anyway"; NO se creó ningún registro DNS nuevo.Comprobaciones tras desplegar (desde fuera, atravesando Cloudflare):
antiguo.feadulta.com/es/→ Joomla real (0 marcadores WP, 6 Joomla), consistente en varias pasadas.cf-cache-status: DYNAMICtanto en el HTML como en un recurso estático (/modules/mod_tabs_gk5/styles/style3.css,text/css) → Cloudflare va al origen en cada petición; imposible servir una copia WP cacheada.DYNAMIC(noBYPASS) porque el contenido ya es no-cacheable de por sí (cookie de sesión PHP de Joomla); el resultado práctico es el mismo. La regla de bypass queda como garantía extra.Estado: resuelto (era caché stale del cutover, ya caducada + regla de bypass como prevención). Por mi parte se puede cerrar. 🎯
⚠️ Resuelto de verdad — NO era Cloudflare ni caché: era la GRAFÍA del subdominio
Mi comentario anterior sobre "caché stale" queda descartado (perseguí un fantasma; solo miré mi propio edge). La causa real:
Hay dos grafías y sirven cosas distintas:
antig**u**o.feadulta.com(O, el que configuraste)Feadultaantig**u**a.feadulta.com(A)Fe adulta – feadulta.comVerificado ahora mismo desde fuera (a través de Cloudflare, 5 pasadas) y directo al origen (
--resolvea 134.0.10.170):antiguo(O) sirve Joomla correctamente. Ambos resuelven a las mismas IPs de Cloudflare (comodín proxied), pero el origen solo tiene vhost paraantiguo(O);antigua(A) no está configurado → cae en el vhost por defecto de WordPress.Por qué nos confundió
antiguo(O) → Joomla, correcto.antigua(A, "la web antigua", femenino) → WordPress.Arreglo sugerido (tu parcela)
Dar de alta
antigua.feadulta.com(A) como alias del vhost Joomla en Apache, o redirectantigua → antiguo. Como "la web antigua" se escribe en femenino de forma natural, conviene queantigua(A) funcione (o incluso sea la principal).La Cache Rule de bypass que añadió Inma es inofensiva y no pinta aquí; puede quedarse o quitarse.
Nuevo: alta de
antigua.feadulta.com(typo con 'a') como alias -> antiguo.feadulta.comRafa quiere dar de alta
antigua.feadulta.compara que quien escriba mal el dominio (antigua en vez de antiguo) llegue igualmente al Joomla legacy. Pregunta: alias DNS directo al servidor, o redirigir aantiguo.Recomendacion: NO dar de alta un registro A/subdominio cPanel independiente para
antigua. Si solo se apunta el DNS a la IP del servidor sin vhost/subdominio configurado en cPanel para ese hostname exacto, Apache no sabe que servir (cae en el vhost por defecto o da error de certificado si Cloudflare no tiene el hostname dado de alta para TLS). Ademas anadir otro subdominio cPanel es mas superficie para repetir el lio deRewriteBase/bucles de redireccion que ya nos mordio conantiguoywp-nuevoen el cutover (ver el resto de este issue y los AH00124 del 2026-07-08).Mejor: resolverlo entero en el edge de Cloudflare, sin tocar Apache/cPanel:
A(oCNAME)antigua-> misma IP que usaantiguo(134.0.10.170), proxy activado (nube naranja). Asi Cloudflare gestiona el TLS del hostname nuevo sin tocar el hosting.antigua.feadulta.com, redirigir 301 ahttps://antiguo.feadulta.com/$1(o destino fijo si no hace falta preservar el path).Todo pasa por Cloudflare antes de llegar al origen — coherente con que esto es tarea de Inma en el dashboard (igual que el resto de pendientes de este issue), no requiere acceso SSH ni cambios en el servidor.
Pendiente: Inma da de alta el registro DNS + la Redirect Rule quo cuando revise el resto de puntos de este issue.