我在Magento 1.8.1中面临PayPal IPN消息。当我用PayPal下订单时,顺序状态仍然显示待处理,即使我已经将IPN通知URL设置为 http://www.devdomain.com/paypal/ipn/ 。还尝试将IPN脚本放在我的根文件夹中但没有成功。:(

我正在使用paypal标准。当我看到PayPal内部时,它会在IPN历史记录页面中显示500错误。

请告知我如何解决这个问题。

有帮助吗?

解决方案

最后我在深度审查后发现了解决方案。这是导致符合“用户代理”HTTP标题的原因。您可以在IPN.php文件上更新此内容。只需在App / Code / Core / Mage / PayPal / Model / Ipn.php上替换以下函数的下面的行(不适用于核心文件。将其添加到本地dir上)

protected function _postBack(Zend_Http_Client_Adapter_Interface $httpAdapter)
.

在线143(在Magento 1.8.1中)

$httpAdapter->write(Zend_Http_Client::POST, $this->_config->getPaypalUrl(), '1.1', array(
                'Connection: close',
            ), $sReq);
.

替换
$httpAdapter->write(Zend_Http_Client::POST, $this->_config->getPaypalUrl(), '1.1', array(
                'Connection: Close', 'User-Agent: your_company_name'
                ), $sReq);
.

许可以下: CC-BY-SA归因
scroll top