2014-10-07 54 views
1

幾天後,我們總是從貝當有人與我們的網上商店PayPal付款得到這個電子郵件:Drupal的電子商務 - 貝寶即時付款通知警告

Please check your server that handles PayPal Instant Payment 
Notifications (IPN). IPNs sent to the following URL(s) are failing: 

[OUR_SHOP_URL]/commerce_paypal/ipn/paypal_wps%7Ccommerce_paymen 
t_paypal_wps 

If you do not recognize this URL, you may be using a service provider 
that is using IPN on your behalf. Please contact your service provider 
with the above information. If this problem continues, IPNs may be 
disabled for your account. 

Thank you for your prompt attention to this issue. 


Sincerely, 
PayPal 

我們使用Drupal的商業上的Drupal 7.「有趣「的事情是:有時會出現這種錯誤,有時候不會。出現此錯誤時,Drupal-Commerce無法將付款狀態設置爲「已完成」,因此需要花費大量時間來手動執行此操作...

我在此找到了「解決方案」,但* .patch並沒有解決問題:https://www.drupal.org/node/1055390

其他解決方案? :/

編輯:

當看看Drupal的最近的日誌信息,我可以找到這是跟蹤誤差。

這是我得到的信息:

Type  commerce_paypal 
Date  Thursday, October 9, 2014 - 13:15 
User  Anonymous (not verified) 
Location [URL]/commerce_paypal/ipn/paypal_wps%7Ccommerce_payment_paypal_wps 
Referrer  
Message  IPN URL accessed with no POST data submitted. 
Severity warning 
Hostname 173.0.81.1 
Operations 

編輯2:

我們發現不便......我們有HTTPS。我非常樂意使用HTTP Url。而且...這工作正常。但我們希望HTTPS不是HTTP。但也許它會幫助你在這裏發生什麼?

回答

0

您需要檢查您的Web服務器日誌文件以準確查看故障發生的錯誤。您將能夠看到當某些事情失敗時您通常會在屏幕上看到的PHP錯誤。

這會給你指導什麼出問題了,你可能需要做些什麼來解決它。

您可以做的另一件事是複製自己失敗的IPN並將其直接發佈到瀏覽器中的IPN監聽器,以便您可以在屏幕上看到結果。這可以幫助進行故障排除和調試。只需創建一個HTML表單,並將操作設置爲您的IPN URL,然後添加一堆隱藏字段,以匹配您在失敗的訂單中獲得的名稱/值。這將觸發相同的錯誤,所以你可以看到它。

+0

當我看看我的管理菜單中最近的日誌消息時,我從列表中的模塊中得到這個錯誤:IPN URL訪問時沒有提交POST數據。 – TJR 2014-10-09 12:03:56

1

這似乎是貝寶本身的問題 - 用戶指出,有時貝寶回調是編碼,因此管道字符(「|」)被編碼爲「%7C」。該用戶描述了您的問題 - 調試此問題非常困難,因爲它只是偶爾出現。

下面是對這個問題的鏈接,有一個小補丁一起:

https://www.drupal.org/node/1055390#comment-7436538

發生在貝寶本身這個問題,儘管我很奇怪,爲什麼這個補丁並沒有被列入Drupal的電子商務本身...

+0

我以前就知道這個問題,並修復它 - 謝謝:)但在我們的問題,它不是一個Drupal問題,我認爲...它的HTTPS問題。當它的HTTPS發生問題時 - 如果沒有問題,並且我有問題要理解爲什麼發生這種情況... – TJR 2014-10-17 14:04:54