2016-11-05 4 views
5

인라인/임베디드 이미지 (일명 cid)가 포함 된 PHP 메일을 보내려합니다. 메일이 성공적으로 발송되어 Gmail에서 올바르게 수신되었습니다. 그러나 Thunderbird (Windows 최신 버전)에서는 인라인/포함 된 이미지가 표시되지 않습니다.PHP - 인라인 이미지가 Thunderbird에 표시되지 않음

나는 this 스레드에서 주어진 정보를 따랐지만 여전히 작동하지 않습니다. 따라서 인라인/임베디드 이미지는 Gmail에는 표시되지만 Thunderbird에는 표시되지 않습니다. 누군가 여기서 문제를 알고 있습니까?

To: [email protected] 
Subject: Test 
From: [email protected] <noreply> 
MIME-Version: 1.0 
Content-Type: multipart/related; boundary="52cd9ebf4fb8c9b0547e93b82b3f3f6b" 

--52cd9ebf4fb8c9b0547e93b82b3f3f6b 
Content-Type: text/html; charset=ISO-8859-1 
Content-Transfer-Encoding: 8bit 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <title>Test mail</title> 
    </head> 
    <body> 
     <img src="cid:myImage" alt="This is a embedded image" /> 
    </body> 
</html> 

--52cd9ebf4fb8c9b0547e93b82b3f3f6b 
Content-Type: image/jpg; name="myImage.jpg" 
Content-Transfer-Encoding: base64 
Content-ID: <myImage> 
Content-Disposition: inline; filename="myImage.jpg" 

[base64 encoded string goes here.] 

--52cd9ebf4fb8c9b0547e93b82b3f3f6b-- 
+0

로컬 문제와 비슷합니다. 설정이 이미지 차단 여부 (기본값)로 표시되지 않는지 확인하십시오. –

+0

나는 Thunderbird의 설정을 찾을 것이라고 확신한다. 그냥 기본 설치 설정. – Piet

답변

1

음 ... RFC 1521은 Content-Type 헤더의 형식이 다음과
로 텍스트의 content-type 헤더 필드의 형식 문법은이

같은이 말에서 :

text-type : = "text" "/"text-subtype [ ";" 일반 "/ 확장 토큰

캐릭터 세트 : ="US-ASCII "/"ISO-8859-1 "/"ISO-8859- : "="= 캐릭터 세트]

텍스트 하위 ""문자셋 " 2 "/"iso-8859-3 " "iso-8859-4 "/"iso-8859-5 "/"iso-8859-6 "/"iso-8859-7 " /"iso-8859- 8 "/"iso-8859-9 "/ 확장 토큰 ; 대소 문자를 구분하지

내가 콘텐츠 형식을 의미하고, 캐릭터 세트 옆에 는하지만

Content-Type을 넣어 : 이미지/JPG를, = "myImage.jpg에"

이름을 그래서 ...이 어쩌면 당신의 이미지를 깰 수 ... 또 다른 제안은 사건을

관련 에밀리

+0

답장을 보내 주셔서 감사합니다. 인용문의 첫 번째 줄에는 "텍스트의 내용 유형 헤더 필드"가 표시되므로 이미지가 아닙니다. 또한 content-ID를 낮추더라도 영향을주지 않습니다. 그래서 당신이나 다른 누군가가 해결책을 얻었 을까요, 아니면 Thunderbird의 버그입니까? – Piet

+0

이미지 형식이 같지만 charset을 추가하지 않아도됩니다. 그런 다음 내용 유형 뒤에 'name = "myImage.jpg"텍스트를 제거하고 작동하지 않을 경우 소리 치십시오. – Emiliano

1
낙타하지 소문자로 콘텐츠-ID를 넣어

이미지 확장에 정확한 대소 문자가 있는지 확인합니다. 과거에는 이미지 파일 확장명이 .JPG인데도 .jpg가 많은 브라우저에서 표시되지만 일부에서는 깨지거나 적어도 불일치하게 작동합니다.

이 경우는 그렇지 않을 수도 있지만 최고점에 도달해야합니다.

0

답장을 보내 주셔서 감사합니다. 나는 그것에 대해 확신하지 못했지만 지금 작동하기 때문에 thunderbird 개발자가 최신 릴리스에서 버그 수정을 한 것처럼 보입니다. 그것이 맞다면, 썬더 버드의 devs 감사합니다!

관련 문제