我正在使用Magento 1.8.1版本,我想设置Paypal IPN以更新我的订单状态,但是当我从PayPal运行IPN模拟器测试时无效会抛出HTTP错误,请参阅此{{3} }。
请告知我如何解决此问题。
答案 0 :(得分:0)
最后,我在深入研究后找到了解决方案。这是因为请求中的“USER Agent”HTTP标头。您可以在Ipn.php文件上更新它。只需在app / code / core / Mage / Paypal / Model / Ipn.php上替换此函数的以下行(不要在核心文件上应用。在本地目录上添加)
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);