1

現在、Paypal IPN リスナーに問題があり、paypal から毎日次のメールを受信して​​います。

「PayPal 即時支払い通知 (IPN) を処理するサーバーを確認してください。次の URL に送信された IPN が失敗しています:

http://www.mysales.ie/create_promo_listener.php "

ユーザーが広告を作成し、完全に機能するデモ サイトを持っています (IPN に問題はありません) が、私が開発している適切なサイトにはこの問題があります (別のホストにあります)。

ホスト プロバイダーに連絡したところ、彼らの問題ではないとのことでした。PHPエラーログを試しましたが、問題が見つかりません。両方のサイトにまったく同じコードがあるため、問題が何であるかを理解できません。

<?php include 'ipn_handler.class.php';


/**
* Logs IPN messages to a file.
*/
class Logging_Ipn_Handler extends IPN_Handler
{
    public function process(array $post_data)
    {
            $data = parent::process($post_data);

            if($data === FALSE)
            {
                    header('HTTP/1.0 400 Bad Request', true, 400);
                    exit;
            }

           $random_number = $_POST['custom'];


            file_put_contents( 'logs/listenerTest.txt', "listener = " .              $random_number, FILE_APPEND);
            header("location:create_promo_creator.php?random_number=" .            $random_number);

    }
 }

date_default_timezone_set('Europe/Oslo');

$handler = new Logging_Ipn_Handler();
$handler->process($_POST);

私は長い間問題の根本を見つけようとしてきましたが、それを理解することはできません.

4

1 に答える 1

0

$data = parent::process($post_data); のようです メソッドは FALSE を返します。

これを確認するために、コードにログ記録計装がありますか?

簡単な回避策は、PayPal の IPN システムを正常に保つために 200 応答を返し、エラーをログに記録してさらに確認することです。

于 2012-10-21T03:50:04.413 に答える