Magento随机致命错误



我有一个基于服务器场的VPS apache服务器。

最近,我遇到了内存限制错误,我决定通过在PHP配置的WHM面板中将内存限制更改为256MB来增加内存限制的数量。在我按下"保存"按钮后,我的网站(以及我服务器中的其他wordpress网站)到处都是随机的致命错误和500个内部服务器错误:http://amadeus-trade.ru

我可以登录后台,但是,当我尝试去系统->配置时,我得到了这个错误:

内部服务器错误

服务器遇到内部错误或配置错误,无法完成您的请求。

请与服务器管理员联系,webmaster@amadeus-trade.ru并告知他们错误发生的时间,以及您可能做的任何可能导致错误的事情。

服务器错误日志中可能提供了有关此错误的更多信息。

此外,在尝试使用ErrorDocument处理请求时,遇到了500内部服务器错误

当我尝试添加产品时,我会收到这个错误:

致命错误:第2423行上/home/amadeus/public_html/app/code/core/Zend/Date.php内存不足(已分配19922944)(试图分配1245184字节)

这个错误总是从一个文件跳到另一个文件,看起来像这样的方案:

致命错误:第xxxx-行/home/amadeus/public_html/xxxx/xxxx/xx/xx.php内存不足(已分配xxxxxxxx)(试图分配xxxxxxx字节)

现在,它是全新安装。到目前为止(直到2012年11月1日),该网站运行良好,没有出现任何问题。

托管公司的团队表示,这是magento中代码的问题,但我肯定问题出在服务器上!我的WHM版本由团队在2012年11月1日更新为v11.30

你能帮我解决这个问题吗?

查看错误消息

Fatal error: Out of memory (allocated 19922944) (tried to allocate 1245184 bytes) 
in /home/amadeus/public_html/app/code/core/Zend/Date.php on line 2423

PHP告诉您,它试图分配1245184字节的内存,但这超出了允许的限制。它还告诉您,目前分配了19922944个字节。

1245184字节是1216千字节(KB),即1.1875兆字节(MB)。

19922944字节是19456千字节(KB),大约是19兆字节(MB)。

这意味着两件事中的一件。

  • PHP认为它只允许分配大约19MB的内存

  • 操作系统PHP在内存不足的上运行

检查运行时php.ini设置,以确保内存更改被卡住(使用调用phpinfo函数的单个页面来执行此操作)。此外,请确保它是256M,而不是256MB。后者不会被PHP识别,并且会发生"奇怪的事情"(包括超低的内存限制)。

也就是说,我猜是晚些时候。当我的PHP版本超过memory_limitini中设置的限制时,我会得到一个稍微不同的错误。

PHP Fatal error:  Allowed memory size of 262144 bytes exhausted (tried to allocate 10493952 bytes)

PHP告诉我,它的允许限制已被违反。您的错误

Fatal error: Out of memory 

说PHP实际上已经用完了服务器当时可用的所有内存。

除此之外,您的主机的响应显示缺乏Magento特定的知识——任何能够运行系统的主机都可以向您提供我刚才所做的信息。我首先会问他们单个PHP请求的最大内存限制是多少。最后,我会转到一个VPS主机,广告Magento的能力,并有一个良好的声誉。

可能是256M比最初设置的要低吗?听起来你已经知道了,Magento至少需要256mb的ram,建议使用512,当然对于更大的应用程序更需要。

运行phpinfo()命令,查看memory_limit属性的设置。如果可以,请使用.htaccess将限制更改为更合理的级别:

php_value memory_limit 512M

然而,我必须说,您的托管提供商很有可能会反对更改此设置(如果他们不允许您在.htaccess中更改)。

最新更新