西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > magento教程 >

magento后台导入产品超时

时间:2016-01-27 20:52来源: 作者: 点击:
在magento后台将数据指导入的时候,打开日志才发现是PHP超时。 PHP Fatal error: Maximum execution time of 30 seconds exceeded in /../public_html/lib/Zend/Db/Statement/Pdo.php on line 58 我在magento 1.8.1和1.9中都有发

在magento后台将数据指导入的时候,打开日志才发现是PHP超时。

PHP Fatal error:  Maximum execution time of 30 seconds exceeded in /…../public_html/lib/Zend/Db/Statement/Pdo.php on line 58

我在magento 1.8.1和1.9中都有发现这个问题。解决的办法是

编辑 lib/Zend/Db/Statement/Pdo.php 文件

在protected function _prepare($sql)函数声明的第一行加入

set_time_limit(0);

这个肯定可以。不过这样修改对整个magento的数据库连接都是适用的。如果程序某个地方确实存在有问题的sql,结果又不会超时是会导致资源的消耗,甚至DOWN掉。

合适的作法应该是修改后台导入商品的action或类。

app/code/core/Mage/ImportExport/controllers/Adminhtml/ImportController.php

在大概95行加入set_time_limit(0);

    /**

     * Start import process action.

     *

     * @return void

     */

    public function startAction()

    {

        set_time_limit(0);  //added by georgezheng

当然最好是采用重载的方法,不然更新的时候,如果MAGENTO没解决这个问题,你还要再次编辑修改,不然还会超时。

(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容