Los correos electrónicos a iCloud desde mi servidor muestran 'Este mensaje no tiene contenido'

1

Nuestro sitio web de donaciones envía correos electrónicos cuando un usuario se registra, hace donaciones, etc. He recibido muchas quejas de que los donantes están recibiendo correos electrónicos en blanco. Tras una investigación adicional, resulta que todos estos donantes tienen correos electrónicos de Apple, es decir, @ mac.com, @ me.com @ icloud.com, etc.

Así que conseguí una Mac, creé un correo electrónico con la aplicación de correo para una cuenta de iCloud. Hizo una donación de prueba, y recibió un correo electrónico. Al ver en la aplicación de correo, veo en el lado izquierdo como una vista previa del texto

Gracias por donar a ... [el tema]
Este mensaje no tiene contenido. [la vista previa del cuerpo]

El panel derecho, también mostró el tema, pero completamente en blanco para el cuerpo.

También vale la pena señalar, el mismo problema es en iOS (tomé prestado el iPhone 6 de mi amigo más). Sin embargo, en mi Android, utilicé la aplicación de Outlook e inicié sesión en mi nube, ¡y ahí estaba el texto del cuerpo!

Supongo que es posible que el software de Apple no haya analizado correctamente el html del correo electrónico ...

Todas las búsquedas para el problema dieron lugar a soluciones para un usuario específico que experimenta este problema, pero mi problema es sobre el mensaje de correo electrónico en un cliente de correo electrónico de Apple.

¿Alguien me puede apuntar en la dirección correcta? ¿Existe un estándar html específico para los correos electrónicos de Apple?

scrollup
fuente
¿Existe la posibilidad de pegar o unir algunas muestras?
caseynolan
Además, ¿puede comprobar si los mensajes se envían correctamente con el sitio web de iCloud?
caseynolan
1) No estoy seguro de cuál sería la muestra correcta para proporcionar. El mensaje del servidor es html básico ( div s y table s etc). Tal vez haya una pista en el mensaje en bruto ... Si puedo obtener el correo en bruto recibido por icloud, lo pondré en algún lugar. 2) Otros correos electrónicos se reciben correctamente en el sitio web de icloud. Sólo faltan el cuerpo de los correos electrónicos HTML de mi servidor.
scrollup

Respuestas:

1

Resulta que el problema tiene que ver con los encabezados de contenido y cómo los interpretan los clientes de correo electrónico.

Originalmente, el HEADER estaba configurado para Content-Type: multipart/related; y el cuerpo estaba estructurado como

multipart/alternative
    text/plain
    text/html

Parece que los clientes de iOS y Apple no pudieron analizar multipart/related correctamente.

Lo resolví cambiando el encabezado a Content-Type: multipart/alternative; y luego estructuró el cuerpo como

    text/plain
    text/html

Aquí está la biblioteca de correo que estaba usando https://github.com/opencart/opencart/blob/1.5.5.1/upload/system/library/mail.php

Discusión similar aquí https://stackoverflow.com/questions/19497672/multipart-messages-including-multiple-attachments-attachment-and-inline-wi

Y aquí https://stackoverflow.com/questions/7766943/mime-multipart-related-structure-and-apple-mail-is-it-a-bug

scrollup
fuente
Seguimiento: parece que todavía hay clientes que experimentan este problema. Si alguien tiene una explicación definida por favor comparta.
scrollup