« vi臭 | トップページ | ハミガキ »

2004年11月30日 (火)

お大尽仕様

昨日はまりかけたので、備忘録

12月1日開始のキャンペーンのシステムのβテストをやってもらってたら、「(システムから返信されるはずの)メールが帰ってきません」とのこと。それも2人ほど。
なんだろなーと、DBをのぞいて見ると "hogehoge........"@docomo.ne.jp なんて感じのアドレスが2つ。確認すると、やはりその人たちのアドレスらしい。でも、ダブルクォートはついてないと。むむ
で、色々調べてみたのだけど、どうやら . が連続するアドレスはインターネット上で使ってはいけないらしい。RFCによれば . が2つ以上続くのは不正なアドレスだと。
とりあえずここが詳しいので納得。

ただ、もしもインターネット以外のところに送るメールでRFCに反したアドレスが有った場合(旧システムや外部とのやり取りも想定されているらしい)は、@ より前を "" で囲むことになっているらしい。

で、結局天下の DoCoM○がRFCを無視してピリオド連打のアドレスもOKにしてるのが、そもそもの間違いの始まりなんだけど、そこからメールが来た場合には、オイラのカワイイPostfixちゃんは、丁寧に "" で囲んでくれるのね。だってインターネット上では有り得ないアドレスだから。で、ここがまだ解明されてないのだけど、どうも "" で囲まれたアドレスに対しては Postfix はメールを送ってくれないらしい。Postfix じゃなくて PHP の mail 関数の問題なのかなぁ。それはなさそうだしなぁ。Mewから "" で囲ったアドレスに投げたらちゃんと届いたし。ま、切り分けする時間もないので、とりあえずこんな感じで逃げておいた。
$addr = preg_replace("/^\"(.*)\"@/", "\$1@", $addr);

RFCを読まなかった携帯キャリアの罪」という題名は非常に納得いくもんだけど、ex-開発者としては、RFCの読みづらさには同情するね。書いてあることは理解できても、結局何がOKで何がダメなのかがわからん。メール関連に限らず。
ま、でも強けりゃちょっとぐらいのルール違反はいいのよ。強けりゃ…チクショー

|

« vi臭 | トップページ | ハミガキ »

てっく」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/232324/37748805

この記事へのトラックバック一覧です: お大尽仕様:

« vi臭 | トップページ | ハミガキ »