― MozillaZine.jp フォーラムは Mozilla 製品に関する情報交換の場です ―



All times are UTC + 9 hours

返信する
ユーザー名:
件名:
オプション:
BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: ON
BBCode を無効にする
フォントサイズ:
フォントカラー
スマイリーを無効にする
URL を自動的にパースしない
ユーザエージェントを表示する
認証コード
KCaptcha by Nikita_Sp
   

トピックのレビュー - ThunderbirdでHTMLメールを送信すると、絶対パス指定の画像が添付ファイルとして送信されてしまいます。
作成者 メッセージ
  記事の件名:  Re: ThunderbirdでHTMLメールを送信すると、絶対パス指定の画像が添付ファイルとして送信されてしまいます。  引用付きで返信する
kiki様・偶然的通行人様

大変わかりやすい説明、ありがとうございます。
おかげさまで、問題を解決させることができました。

ThunderbirdにHTMLで挿入した後、その画像をダブルクリックすると画像の場所指定等の項目が表示され、そこで「画像を添付しない」+「代替テキストしない」設定をすることで、画像が添付にならないHTMLメールの作成に成功しました。

この度は、貴重なお時間を割いてご丁寧に解決にお導き頂き、本当に感謝しております。
また、幅広い知識もお分け頂き、大変勉強になりました。

重ねてお礼申し上げます。
ありがとうございました。
投稿記事 Posted: 2014年2月08日(土) 11:52
  記事の件名:  Re: ThunderbirdでHTMLメールを送信すると、絶対パス指定の画像が添付ファイルとして送信されてしまいます。  引用付きで返信する
横から失礼します。

HTML 形式の電子メールにおける画像ファイル挿入の標準的な取り扱いについては、kiki さんからアドバイスがあるとおりです。

一方、使いどころに十分な配慮が必要になりますが(関連後述)、画像をリモートコンテンツとして挿入することは可能です。

Thunderbird で HTML 形式のメッセージ編集をおこなう場合に、添付ファイルとしてではなくリモートコンテンツとして画像ファイルの URL を挿入したいときの標準的な操作手順は、つぎのようになります。
(最初からテンプレートの HTML ソースに頼るのではなく、まずは Thunderbird の標準的な操作方法での HTML メールの作成・編集を理解するようお勧めしておきます。)

(1)Thunderbird のメッセージ作成ウィンドウのメニューから、[挿入] -> [画像] を選択。
(2)開いた [画像のプロパティ] ダイアログで、[画像の場所] 欄に挿入したい画像の「絶対 URL」を記述。
(3)[この画像をメッセージに添付する] のチェックをはずす。(デフォルトはチェック入り)
(4)他の項目を必要に応じて設定。
(5)[OK] ボタン押下でダイアログを閉じる。

ポイントは(3)です。
ここにチェックが入っているとき([この画像をメッセージに添付する] が有効。デフォルト)は、kiki さんのご説明と例示にあるとおり、画像データは添付ファイルのようにエンコードされてメッセージソースに埋め込まれ、そのパートの Content-ID が、img src のタグ/属性の値として定義されます。

(3)のチェックをはずしたとき([この画像をメッセージに添付する] が無効)は、下記のようなソース記述になります(本件に関連のない属性などは省略)。
コード:
<img src="絶対 URL 形式による画像ファイルのパス…(P)"
 moz-do-not-send="true">

(P)は必ず "絶対 URL" 形式です。OS のパス記法(例.C:\image\sample.jpg など)ではありません。
moz-do-not-send="true" は Thunderbird 独自の条件定義で、これがあることで当該の画像データはメッセージソースに埋め込まれなくなります(Thunderbird 側で画像の埋め込みを抑止するだけで、受信側には影響しません)。
その結果、受信側がこのメッセージを HTML 形式で表示すると、img src で指定された画像はリモートコンテンツとして扱われ、ブラウザで見る通常の HTML のように指定先から読み込むような動作になります。

もし、テンプレートとして常用する HTML ソースがあり、そこに画像ファイルの参照先(絶対 URL)を書き込んでおきたいのなら、上述の事項をふまえてテンプレートを修正してください。

(補足)
ご承知のこととは思いますが、念のためにリモートコンテンツの注意点を書いておきます。
冒頭で「使いどころに十分な配慮が必要」と述べたのは、つぎのような意味を含んでいます。

記述する URL は、受信側から確実にアクセス可能な URL でなければ意味をなしません。
よく利用される典型例は、インターネット上に置かれた画像ファイルを http:// から始まる "絶対 URL" で指定するものでしょうか。(受信側がルートを特定できないのなら相対 URL は使えません。)
当然ながら、送信側のローカルにあるファイル(例. file:///C:/image/sample.jpg など)や、外部からのアクセスが制限された送信側のローカルネットワーク内のファイルは、受信側からはアクセスできません。

リモートコンテンツは、画像データを外部からそのつど読み込むため、受信後にオフラインでそのメールを読もうとすると画像を読み込めないことがあります。(Thunderbird は Web キャッシュを持っていますが、実際には受信者が使用しているメールソフトや設定内容に依存します。)
総じて、リモートコンテンツは受信側のネットワーク事情に左右される点に留意してください。

受信側がプレーンテキスト形式でのメッセージ表示を標準としている場合、受信者がリモートコンテンツとして記述された画像を見るには手間が必要になります。
画像がソースに埋め込まれている場合は添付ファイルとして簡単に開けますが、リモートコンテンツは表示に一手間かかるため、受信側にとっては使い勝手が悪くなるという側面があります。

受信側の条件によっては、セキュリティ上の理由からリモートコンテンツがブロックされているケースがけっこうあります。
HTML メールに書き込まれたリモートコンテンツは、"Web バグ" あるいは "Web ビーコン" としても利用可能だからです。
リモートコンテンツを表示するためには、メールソフトやセキュリティ対策ソフトの安全機能を解除する、例外を許可するなどの手間を要求することになります。
このような事情から、セキュリティやプライバシーに慎重な相手に対して、何の説明もなくぞんざいにそういうメッセージを送ると、余計な警戒心を抱かせてしまうこともあるようです。(業務用の電子メールに HTML 形式を使うことを禁止している法人もあるくらいですから......。)

上述のような観点から、送信側の確認(下書きや自分宛)でリモートコンテンツとして表示できていても、受信側では必ずしも表示できるわけではないことに十分注意してください。
(こうした不都合を避ける意味から、メッセージソースに画像データを埋め込むのが Thunderbird の初期設定になっています。)


とりあえず以上です。的外れな話だったらすみません。
投稿記事 Posted: 2014年2月06日(木) 09:09
  記事の件名:  Re: ThunderbirdでHTMLメールを送信すると、絶対パス指定の画像が添付ファイルとして送信されてしまいます。  引用付きで返信する
 
lightup77777 さんが書きました:
さて、不足しておりました情報ですが、「絶対パス指定の画像」は自社サイト用に使用している
レンタルサーバにフォルダを作り、そこにアップロードしたもののURLを記載しました。
以下にコードを記載致します。

<tr><td width="640" height="30" bgcolor="#ffffff"><img
src="http://xxxxxxx.xxx/mail_image/1401/title.jpg" width="640"
border="0"></td></tr>
<tr>

(『xxxxxxx.xxx』は自社サイトのURLが入ります。)

上記のソースコードを拝見すると、画像ファイルは、自社のレンタルサーバ上にあることが
わかります。

ですが、そのサーバに対して、当然ながら、自社内のアクセスできる方しか直接参照して表
示することはできません。
該当メッセージを受信して、閲覧する方が、外部の方ならば、当然ながら画像ファイルにア
クセスすることができないので、表示することができません。
 #これは、ローカルパス(自分の PC 内の場所など)でも同様です。

ですので、画像ファイルは、添付されるのです。(これも仕様です)
添付されていれば、最低でも、単独で個別に表示させて、見ることができます。


lightup77777 さんが書きました:
サンダーバード以外のメールソフトやメールサービスから送信すると、画像は添付にはならないのですが、
レイアウトが崩れて表示されてしまいました。その為サンダーバードを使用したいと考えております。

どんなメールソフトやウェブメールシステムでも、アクセスできないサーバ上の画像ファイ
ルを直接見ることはできません。
見ることができない(アクセスできない)画像ファイルを、HTML コード上で URL を指定
して、リンクさせて、サイズ指定したり、装飾しても、それは反映されません。

受信側(相手側)で、表示されている画像は、添付されているものです。
それは、単に添付されているだけですので、HTML 上の CSS などのレイアウト装飾は効い
ていません。
該当メッセージの受信側(相手側)で、レイアウトが崩れたり、思うとおりに表示されない
のは、そのためです。


解決策は、次の 2 つの方法になるでしょう。

1.自社レンタルサーバ上にある画像ファイルを、誰でもアクセスできる場所に置き換える。
  置き換えた URL を、画像ファイルのリンクとして、メッセージに挿入する。

  #これは、画像ファイルだけではなく、自社内のあらゆるファイルも同じです。
  #扱いや操作を誤ると、外部に漏洩しては困るファイルまでも、公開してしまう
   ことになります。
  #ですので、その扱いには、リスクがあることを正しく理解した上で、注意が必
   要です。

2.自社レンタルサーバ上にある画像ファイルを、一旦、ご自分の PC 内にダウンロードし
  て、保存してから、それをメッセージに直接挿入する。(ローカルパスではありません)

  #当方が、サンプルで紹介したものと同じ方法となります。


【補足:大きなお世話編】
下記の内容を、この機会に、正しく理解されておくのをお勧めします。

・自社レンタルサーバにあるファイルは、誰がアクセスできて、利用できるものなのか。
・何のために自社レンタルサーバがあるのか、その利用目的は何なのか。
・HTML とは、どいうものなのか。URL、リンクの仕様と扱いは、どうなるのか。
・HTML 形式メッセージとプレーンテキスト形式メッセージの違いと区別。
・そして、その適切な利用方法。
投稿記事 Posted: 2014年2月06日(木) 08:53
  記事の件名:  Re: ThunderbirdでHTMLメールを送信すると、絶対パス指定の画像が添付ファイルとして送信されてしまいます。  引用付きで返信する
kiki様

この度はご丁寧なアドバイス、また引用情報を綺麗にまとめてくださり、ありがとうございます。
当方、不慣れ為に未熟で至らず申し訳ありません。
せっかくご掲示くださいましたソースも、恥ずかしながら私にはよく理解できません。
重ねてお詫び申し上げます。

さて、不足しておりました情報ですが、「絶対パス指定の画像」は自社サイト用に使用している
レンタルサーバにフォルダを作り、そこにアップロードしたもののURLを記載しました。
以下にコードを記載致します。

<tr><td width="640" height="30" bgcolor="#ffffff"><img
src="http://xxxxxxx.xxx/mail_image/1401/title.jpg" width="640"
border="0"></td></tr>
<tr>

(『xxxxxxx.xxx』は自社サイトのURLが入ります。)

サンダーバード以外のメールソフトやメールサービスから送信すると、画像は添付にはならないのですが、
レイアウトが崩れて表示されてしまいました。その為サンダーバードを使用したいと考えております。

お手数をおかけし大変恐縮ですが、頂きました情報を含めどのように反映させればよいか、
更にご教示くださいますよう、よろしくお願い致します。
投稿記事 Posted: 2014年2月05日(水) 14:13
  記事の件名:  Re: ThunderbirdでHTMLメールを送信すると、絶対パス指定の画像が添付ファイルとして送信されてしまいます。  引用付きで返信する
 
*質問・投稿する前に、サポートサイトやヘルプ、このフォーラム内を検索・閲覧して
 該当項目、同類・類似事例がないか、確認してみましょう。
 また、広くインターネット上でも、同類・類似事例がないか、調べてみましょう。
*質問した後やアドバイスをもらった後は、放置せずに、結果や経緯を必ず書くように
 しましょう。ここは、ユーザ同士で、各種情報・事例を、シェアする場です。
 
 
 
HTML 形式のメッセージに、画像を挿入して送信するケースですね。

1.「絶対パス指定の画像」とは、具体的にどこにある画像ファイルですか?

  PC 内などのローカルにある画像ファイルは、添付になるのが正常です。
  ローカルパスのファイルは、セキュリティ上の理由から、パスのみを挿入した場合は、
  受信側ではリンク参照できないので、実体ファイルの添付になります。(仕様です)

2.テンプレートを利用して作成した HTML コードを、Thunderbird の本文に挿入した
  該当メッセージのソースをコピーして、提示してください。


#以下は、当方で作成したサンプル HTML メッセージの本文部分のソースです。
#メッセージは、HTML 形式とプレーンテキスト形式の混合(multi-part message)です。
#画像ファイルは、代替テキストなしです。
#画像は、<img src="cid:part1.09080601.03070605@xxxxx.com" alt=""> に挿入
 されて、表示します。

コード:
This is a multi-part message in MIME format.
--------------050902000406050206000302
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit

Sample HTML Message

[Image]


--------------050902000406050206000302
Content-Type: multipart/related;
boundary="------------080108010809070605070407"


--------------080108010809070605070407
Content-Type: text/html; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit

<html>
<head>
<meta http-equiv="content-type" content="text/html;
charset=ISO-2022-JP">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<tt>Sample HTML Message<br>
<br>
[Image]<br>
</tt><br>
<img src="cid:part1.09080601.03070605@xxxxx.com" alt="">
</body>
</html>

--------------080108010809070605070407
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-ID: <part1.09080601.03070605@xxxxx.com>

iVBORw0KGgoAAAANSUhEUgAAAGAAAABtCAIAAADRZPOxAAAABnRSTlMA/wD/AP83WBt9AAAA
CXBIWXMAABcRAAAXEQHKJvM/AAAgAElEQVR42uy8eZBlWVof9n3fWe7y3n1LbpW179XVXb13
9T7TPTM9NNMMhmEw1oADJDACobBCSEjIVtjSWJYJBw4vYcnLgLHQSEKhASQGwyBmkYbpWXqt
(画像データの行数が多くなるので、途中省略)
pGSYKCDFLC13k6BG2Jgja+cTA6SoOEUTBE9kgOhgEJQSxwWUjL5PjxGQwsXBZCA7gvIROxqI
A8yB4+piI6y+2AUPdWWBtQb6Sxo0EwCkqDgZFPXlqYmkpzMBQIrbVrDTibI6QvtvAMVSSHRV
qqFm6p+LnDAgfRZqMxoHmpsC6HqqGTeXmwgoETvjX/3U6m9mIckQ9/e/tgAAAABJRU5ErkJg
gg==
--------------080108010809070605070407--

--------------050902000406050206000302--




【補足】
紹介されたリンク URL の情報を、下記にわかりやすく記述しておきます。

[参照]
Thunderbird(サンダーバード)でHTMLメールを配信する方法 - MOROMOLOG
MozillaZine.jp フォーラム - [解決済み] HTMLメール作成の方法
投稿記事 Posted: 2014年2月04日(火) 22:13
  記事の件名:  ThunderbirdでHTMLメールを送信すると、絶対パス指定の画像が添付ファイルとして送信されてしまいます。  引用付きで返信する
現在ネット上で紹介されている以下のHTMLメールの送信方法は試しました。転載致します。
http://moromolog.tsingtao3.com/2011/03/thunderbirdhtml.html



●「アカウント設定」→「編集とアドレス入力」の項目内の「HTML形式でメッセージを編集する」にチェックを入れる。

●「作成」ウィンドウを立ち上げて、「挿入」→「HTML」で表示される「HTMLを挿入」ウィンドウ内に、あらかじめ作成してあるHTMLをコピペする。

●「オプション」→「送信形式」→「HTMLのみ」または「テキストとHTML」を選択。
●問題なければ送信。




また、過去に同じ質問をされている方もいらっしゃったようですが、自己解決されたようで、解決方法の記載がありませんでした。

http://forums.mozillazine.jp/viewtopic.php?f=3&t=11000&p=38142&hili...



●ツール~オプション~編集~一版タブの「送信するメッセージの形式を設定します」で「受信者によらずHTMLのまま送信する」にしてからメッセージの作成を実行。
●作成は書式ツールバーから実行した方が確実です。

これらに関しても実行しましたが、ダメでした。



当方が使用しているOSはWindows7

Thunderbirdは24.2(現在最新版)
です。
HTMLメールのテンプレートとして以下のサイトで作成したものをベースに使用しています。
http://www.campaignmonitor.com/templates/



是非とも知識をお貸しくださいますよう、よろしくお願い致します。

(必要情報が不足しておりましたら追記致しますので、ご指摘くださいませ)
投稿記事 Posted: 2014年2月04日(火) 19:03

All times are UTC + 9 hours


ページ移動:  
Powered by MozillaZine.jp® Forum Software © phpBB Group , Almsamim WYSIWYG
Japanese translation principally by ocean