首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Magento 1.5.0.1偶尔‘调用非对象上的成员函数getId()’

Magento 1.5.0.1偶尔‘调用非对象上的成员函数getId()’
EN

Stack Overflow用户
提问于 2012-04-21 22:03:26
回答 1查看 1.7K关注 0票数 1

我正在使用Magento 1.5.0.1,在结帐时偶尔会出现“调用非对象上的成员函数getId()”错误。

客户将多次尝试使用相同的详细信息结帐,错误消息“Call to a member function getId() on a non-object”将继续出现,但几秒钟或几分钟后,错误将停止,结帐将完成。

这种情况并不是100%都会发生。

我已经检查过: 1) Apache错误日志是干净的,apache有大量空闲的系统资源。根据官方指南针对Magento进行了优化。2) MySQL错误日志干净,mysql有大量空闲的系统资源。根据官方指南针对Magento进行了优化。3) PHP错误日志只会显示‘调用非对象上的成员函数getId()’,没有任何迹象表明PHP耗尽了内存,即内存耗尽的典型错误--内存分配失败。4)执行了所有其他Magento优化:缓存、编译、APC、PHP限制为256mb。5) APC有大量的系统资源费用。6) CPU使用率从未达到25-50%,RAM使用率仅为40%- 50%,超过50%的空闲空间!

还可以得到“对非对象的成员函数getStoreId()的调用”错误消息。

我想尽我所能做更多的事情!在50个订单中,它将搞砸大约2-3个订单,即客户尝试在5-10分钟内结账约5-10次。

什么可以被锁定?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-24 09:54:18

当我分析我的Magento安装(1.4.2)上的类似错误时,我能够把它放在一起,这是基于whois和nslookup搜索的针对网站的某种黑客尝试。人(机器人?)在没有正确初始化会话的情况下下订单,因此不存在为Id所建立的存储(或任何其他)对象。这应该被标记为错误,这样他们就可以正确地处理这种情况,并重新初始化会话或执行一些其他操作,以更好地防止人们探查表单的逻辑。

此外,代码中还存在某种类型的错误,有时客户可能会下订单购买0美元的商品。在每种情况下,都是一个普通的客户,当他打电话给我们时,都会感到惊讶,并向我们提供了用于手动支付处理的CC详细信息。清除缓存和每天的第一件事对此很有帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10259583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档