6.4.38 インターネットにメール送信した時に主題や添付ファイル名がBASE64デコードされない
- 現象
- メールをインターネットに送信した時に,社外のメーラでメールを受信したときに主題や添付ファイル名が文字化け(Base64エンコードされたまま)で見える。
- 要因
- Mail - SMTPでは主題全体および添付ファイル全体をBase64エンコードしていますが,SEND_BASE64_ENCODE=partが指定された時には,主題先頭にASCII文字がある場合や,添付ファイル名の先頭にASCII文字がある場合に可読性を優先して部分的にBase64エンコードしています。また,添付ファイルの拡張子部分もBase64エンコードの対象としていません。この場合,一部の電子メールシステムやメーラで正常にBase64デコードしない場合があります。
- 対処
- 主題や添付ファイル名におけるBase64エンコード方法を変更することにより主題全体,または添付ファイル名全体をBase64エンコードすることができます。以下の手順でSEND_BASE64_ENCODEの設定を行います。
- smtpmngコマンドを起動します。
- 運用管理サブコマンド一覧から「edit_format(ef):書式の設定変更」を選択します。
- 表示されたメニューから「送信メールの書式に関する設定」を選択します。
- 表示されたメニューから「2.送信文字コード(主題,本文,ファイル名) (send_code)」を選択します。
- 設定値としてmimeを指定します。
- 引き続き「MIME主題分割送信制御(mime_subject)の設定」が表示されますので,選択値としてsplitを指定します。
- 引き続き「添付ファイル名の分割送信制御(split_fname)の設定」が表示されますので,選択値としてno_splitを指定します。
- 引き続き「BASE64エンコード制御(send_base64_encode)の設定」が表示されますので,選択値としてallを指定します。
- 設定値を保存してsmtpmngコマンドを終了します。