2011-01-14 62 views
0

我開發基於codeigniter的ipn處理程序腳本爲我的購物應用程序。 Paypal沙盒似乎使用了我的響應腳本的緩存版本。每次我發送一個ipn測試時,我都會收到一封帶有後值的電子郵件。我像2小時前更改了電子郵件模板,但是ipn腳本使用舊佈局發送電子郵件。PayPal IPN似乎使用我的php處理程序腳本的緩存版本

Thant使調試我的ipn變量是一個非常糟糕的混亂。我試着將header-cache-control設置爲「must-revalidate」,但結果看起來是一樣的。

這就像貝寶存儲我的文件的代理版本,並一遍又一遍地使用它。

你對這個問題有什麼想法嗎?

回答

3

如果我必須打賭,我敢打賭這是一個緩存問題。 PHP腳本通常不會發送任何緩存標題(但當然,確保檢查例如使用Firebug),如果貝寶實際上聽取這樣的緩存指令,整個事情的目的將被打敗。

我會三重檢查PayPal調用的URL,看看是否有第二個版本的腳本掛在那裏沒有得到更新 - 可能是Index.phpindex.php什麼的情況?這往往是原因。

我能想到的唯一緩存罪魁禍首就是您的Web服務器端的反向代理。但是你沒有提到有一個,所以我假設沒有。

+0

你說得對,我回家了,不得不反覆思考,並且正如你所建議的,我首先看了一下提交給PayPal的表單。它在另一個我忘記刪除的控制器中調用完全不同的方法。我爲ipn電話假設了錯誤的網址。感謝提示。 – 2011-01-14 17:04:37