0

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

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

我可以登录后台,但是,当我尝试转到系统 - > 配置时,我收到此错误:

内部服务器错误

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

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

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

此外,在尝试使用 ErrorDocument 处理请求时遇到 500 Internal Server Error 错误

当我尝试添加产品时,出现此错误:

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

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

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

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

托管公司的团队说这是magento中的代码问题,但我肯定问题出在服务器上!我的 WHM 版本由团队在 01.11.12 更新到 v11.30

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

4

2 回答 2

4

查看您的错误消息

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 告诉您它试图分配 1,245,184 字节的内存,但这超出了允许的限制。它还告诉您当前分配了 19,922,944 个字节。

1,245,184 字节是 1,216 千字节 (KB),即 1.1875 兆字节 (MB)。

19,922,944 字节是 19,456 千字节 (KB),大约是 19 兆字节 (MB)。

这意味着两件事之一。

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

  • 运行 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 请求的最大内存限制是多少。最后,我会转向宣传 Magento 功能并因此享有盛誉的 VPS 主机。

于 2012-12-04T21:31:21.650 回答
0

会不会是256M比原来设定的低了?正如您已经知道的那样,Magento 至少需要(得到这个)256mb 的内存,建议使用 512,对于更大的应用程序当然更多。

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

php_value memory_limit 512M

但是,我必须说,您的托管服务提供商很有可能会不赞成更改此设置(如果他们不允许您这样做.htaccess)。

于 2012-12-04T20:46:47.847 回答