僕は発展途上技術者

Engine Yard Cloud で ISO-2022-JP メールを送って文字化けする場合の対処法

これ、Engine Yard Cloud を使っている日本のユーザーにとっては FAQ になるのではないかと思ったのでメモ。

Engine Yard Cloud を使っていてメールを送る場合は SendGrid アドオンを使います。

メールの文字コードは最近は UTF-8 でも大丈夫みたいな情報も見るのですが、念のため mail-iso-2022-jp gem を使って ISO-2022-JP で送ります。

すると、短いテストメールでは問題なかったのですが、ちょっと文面が長くなると文字化けしてしまいました。

受信したメッセージのソースをみてみたところ、なぜか text/plain の文面(こちらは正常に表示されている)のあとに text/html(HTMLメール) が続く形で、multipart で送られていました。そして text/html(HTMLメール) の文面が文字化けしている。

どうもこれは SendGrid の仕業のようです。

SendGrid の管理画面に入り、Global Settings のメニューを選び、Don't convert plain text emails to HTML にチェックを入れたところ、plain text のままで送られるようになり、文字化けしなくなりました。



プロフィール

株式会社まちクエスト代表、つくる社LLC代表。

Scratchで楽しく学ぶ アート&サイエンスRaspberry Piではじめる どきどきプログラミングを書きました。

Amazonから図書館検索 Libron、iPhoneアプリ ひらがなゲーム かなぶん を作っています。

Twitter @jishiha

最近のエントリー

アーカイブ