Saltar al contenido

El nuevo almacenamiento en caché de imágenes de Gmail está rompiendo los enlaces de imágenes en el boletín

Te damos la contestación a este disgusto, al menos eso esperamos. Si presentas dudas puedes dejarlo en el apartado de preguntas y con gusto te ayudaremos

Solución:

Creo que he descubierto el problema de GoogleImageProxy.

Esto es algo relacionado con el concepto CACHING. Supongamos que recientemente ha implementado su código php en su servidor, pero olvidó cargar imágenes. probó una vez con la lógica de su correo electrónico. su sistema generó un correo electrónico HTML. Cuando este correo electrónico llegue al servidor de gmail, GoogleImageProxy intentará recuperar y almacenar las imágenes de su sitio en su propio servidor proxy. Mientras buscaba las imágenes, GoogleImageProxy encontró algunos estados 404 contra las imágenes que faltaban y 403 contra algunas imágenes protegidas. GoogleImagesProxy ha almacenado estos estados en su propio servidor proxy.

Ahora que trataste de abrir tu correo electrónico, notaste algunos estados 404 en tus imágenes. Esto es algo comprensible. Inmediatamente se dio cuenta de que olvidó cargar algunas imágenes, por lo que las subió a su servidor. y también ha arreglado algunos permisos contra imágenes protegidas.

Todo ha terminado ahora. Ahora intente ejecutar su script php-email una vez más. Como resultado, recibirá otro correo electrónico en su bandeja de entrada de Gmail o Hotmail. había solucionado todos los problemas con sus imágenes. Ahora las imágenes deben mostrarse en el contenido de su correo electrónico. pero aún no puede ver las imágenes.

Ah, posiblemente olvidó borrar la memoria caché de su navegador. Borre la memoria caché de su navegador y cargue la página de gmail o hotmail una vez más. Pero el resultado seguirá siendo el mismo. Intente aplicar docenas de correcciones / parches e intente ejecutar su script php-email miles de veces. Pero el resultado seguirá siendo el mismo. Sin mejora.

EL PROBLEMA REAL

¿Qué diablos está pasando? Déjame explicártelo. Vaya a su registro de acceso e intente encontrar solicitudes de GoogleImageProxy. Te sorprenderá ver que solo habrá 2 o 3 tres solicitudes de GoogleImageProxy dependiendo de la cantidad de imágenes diferentes utilizadas en tu correo electrónico. GoogleImageProxy nunca intentó recuperar imágenes Incluso después de haber solucionado los problemas con sus imágenes cargando las imágenes faltantes y estableciendo permisos para las imágenes protegidas. ¿Por qué? Limpiar la memoria caché de su navegador no tiene ningún impacto. GoogleImageProxy nunca buscará las imágenes nuevas, incluso para su correo electrónico más reciente, porque las imágenes ahora se almacenan en caché en GoogleImageProxy junto con su último código de estado y no se almacenan en caché en su propio navegador.

GoogleImageProxy ha establecido su propia fecha de caducidad para las imágenes. Creo que un mes. por lo que ahora se obtendrá una copia nueva de las imágenes después de la fecha de caducidad. Quiero decir después de un mes. No puede obligar a GoogleImageProxy a buscar las imágenes. Pero es importante que muestre imágenes en su correo electrónico. Cual puede ser la solución?

LA SOLUCIÓN

La siguiente es la única forma de obligar a GoogleImageProxy a buscar sus imágenes

  • Cambie el nombre de sus imágenes a otra cosa con extensiones png, jpg o gif únicamente.
  • No utilices ningún tipo de consulta string en la url de tu imagen como ?t=34343
  • su imagen debe incluir png, jpg o gif como extensión.
  • la URL de su imagen debe asignarse directamente a su imagen.
  • Si necesita usar alguna URL de proxy para sus imágenes protegidas, su respuesta debe incluir el encabezado adecuado como
    Content-Type: image/jpeg
  • La extensión del archivo y el encabezado del tipo de contenido deben coincidir
  • El código de estado debe ser 200 en lugar de 403, 500, etc.

NOTA IMPORTANTE

Intente repetir todo el proceso para cada ejecución del script php-email. porque cada vez que GoogleImageProxy almacenará en caché sus imágenes y tendrá que repetir el mismo proceso para cada nuevo intento.

Con suerte, esto solucionará el problema para la mayoría de las personas.

Según tu ejemplo, parece que estás usando extensiones tradicionales (.jpg, .png, .gif). Algunas personas en este hilo, que describen los mismos problemas que enfrenta, han declarado que el uso de esas extensiones resuelve el problema.

Otras posibles soluciones:

  • Enlaces de imagen rotos en Gmail debido al proxy de imagen de Google
  • Dudoso, pero tal vez un problema de cookies
  • Configuración de lista blanca de proxy de URL de imagen: esta ha resultado ser la solución para algunos usuarios que están en Google Apps. A través de Gmail no se muestra la imagen cuando la URL de la imagen se agrega con https://ci4.googleusercontent.com/proxy

Tuve un problema similar, pero fue causado por la longitud de la URL. Google genera la siguiente URL al almacenar en caché una imagen de gmail:

https://ci4.googleusercontent.com/proxy/[hash]#[url])

El hash generado se basa en la URL de la imagen, pero el tamaño variará según los caracteres utilizados. Ejecuté varias pruebas con URL de diferentes tamaños y descubrí que la imagen en caché no se cargaría de manera consistente (400 / Solicitud no válida) si el picadillo excede los 2076 caracteres de longitud (cerca de 2048 bytes + meta? No estoy seguro).

Nuevamente, la URL de la imagen podría generar un hash que exceda esta cantidad de caracteres en ~ 1000 caracteres especiales, o 1500+ caracteres simples. Si el hash supera los 2076 caracteres, la solicitud falla.

Me doy cuenta de que esta es una publicación antigua, pero espero que esto ayude a otros desarrolladores a buscar en Google

Más adelante puedes encontrar las reseñas de otros creadores, tú además tienes la opción de mostrar el tuyo si te apetece.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *