【问题标题】:Magento: Getting 500 internal server error when creating invoicesMagento:创建发票时出现 500 内部服务器错误
【发布时间】:2013-10-31 15:13:07
【问题描述】:

我目前的 Magento 商店遇到了一个大问题。当我通过后端创建发票时,我收到 500 内部服务器错误(经过长时间的加载过程)。服务器日志没有显示任何内容,我查看了 /var/log/apache2/error.log 并且没有任何相关内容。该错误没有出现在我的开发机器上,但是自从我将商店移到我们的实时服务器后,它一直在发生。

到目前为止我尝试了什么:

  • 检查文件和文件夹权限
  • 启用 Mage::setIsDeveloperMode(true);ini_set('display_errors', 1);
    仍然没有错误或日志
  • 已删除 local.xml 并生成一个新的
  • 增加内存限制
  • 增加最大执行时间
  • 已清除缓存
  • 检查 .htaccess 文件,一切正常
  • 运行脚本检查是否所有内容都符合 Magento 要求

这开始让我忙了几天......我不知道从哪里开始,因为服务器甚至没有在日志中输出错误。如何强制服务器将错误记录在相应的文件中?

您还有其他想法可以尝试消除错误吗?

还附上我的 php.ini 文件,也许有帮助。

PHP.ini http://pastebin.com/9BWQRHTu

PHP 版本和操作系统:PHP 版本 5.3.2-1ubuntu4.21

环境:虚拟专用服务器

【问题讨论】:

  • 如果您加载一个触发错误或警告的简单测试脚本,您能看到错误吗?
  • 是的,如果我启用 Mage::setIsDeveloperMode(true);和 ini_set('display_errors', 1);

标签: php linux apache magento ubuntu


【解决方案1】:
  1. memory_limit128M 增加到256M512M
  2. 清除浏览器缓存和 cookie。您在其他浏览器中是否遇到相同的“500 server error”?
  3. 你说加载过程很长 - 测量几次准确的时间,如果时间相同,在 php.ini 中设置,增加max_execution_time
  4. 找出为什么使用调试器创建发票需要这么长时间 - 很可能您安装的某些模块存在问题,例如无限循环,或者它可能会触发一个动作,这需要很长时间,例如,每次重新索引所有内容。创建发票不应该花这么长时间,这是代码中的问题 - 可能不是服务器设置。

【讨论】:

  • 1.试过了,没用。 2.没有成功。 3. 我增加了执行时间,但不幸的是这也没有帮助。 4. 我正在尝试为远程连接设置 XDebug...也许这让我更进一步解决了这个问题。
【解决方案2】:

我查看了错误的 error_log 文件,因为我正在使用 Plesk,正确的 error_log 文件位于 /var/www/vhosts/xxx.com/statistics/logs/ 而不是 /var/log/apache2/

里面的错误是

[Mon Nov 04 14:37:13 2013] [warn] [client xxx] mod_fcgid: read data timeout in 45 seconds, referer

这将我带到 fcgid.conf (etc/apache2/mods-available/fcgid.conf),我必须在其中增加以下值:

FcgidIdleTimeout 3600
FcgidProcessLifeTime 7200
FcgidMaxProcesses 64
FcgidMaxProcessesPerClass 8
FcgidMinProcessesPerClass 0
FcgidConnectTimeout 300
FcgidIOTimeout 180
FcgidInitialEnv RAILS_ENV production
FcgidIdleScanInterval 10

【讨论】:

    猜你喜欢
    • 2020-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多