PayPalオートメール

SSL接続のみになったようです

2012年09月07日
PayPalオートメール】では、cURL関数がインストールされていない場合にのみ、補助的に非SSL接続するように書いています。

昨日cURL関数のことを調べているとき、非SSL接続でもエラーが起こっていることに気が付きました。
今日はこのことを突っ込んで調べてみました。

PayPalオートメール】をリリースしたときは、非SSL接続も正常に動いていたので、おそらくその後PayPalの仕様が変わったのでしょう。

返ってくるメッセージを調べたら、http 302が返ってきていました。

調べると、世界中で(?)困っている人がいたらしく、解決法が出てきました。
PayPal IPN _notify-validate throws Error 302 in Sandbox - Stack Overflow
Mark's Tech Stuff: HTTP/1.0 302 Found - PayPal IPN in PHP

どうやら、SSL接続のみになったのではないかと思われます。
PayPalのマニュアルでもSSLを強く推奨していますし、まぁそうでしょう。
非SSL接続だと、PayPalが接続を拒否しています。

全てのユーザーさんにサーバーでSSLを使えるようにして貰うのは酷なので、【PayPalオートメール】では、cURL関数を使っています。
メジャーなサーバーにはインストールされていることは確認済みです。

一応cURL関数がインストールされていない場合は、fsockopenでSSL接続するように書き換えました。