首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >即使我正在从CLI运行PHP执行时错误

问即使我正在从CLI运行PHP执行时错误
EN

Stack Overflow用户
提问于 2013-10-29 10:21:24
回答 2查看 4.9K关注 0票数 0

我试图通过命令行重新索引我的catalog_url_rewrite表(Magento网站),使用/shell中的命令"php indexer.php - reindex catalog_url“。我得到以下错误:

代码语言:javascript
复制
PHP Fatal error:  Maximum execution time of 60 seconds exceeded in /var/www/domain.com/lib/Zend/Db/Statement.php on line 141

错误上的文件和行不同。

我反复检查了命令行中的php是否确实使用了php版本(通过使用"php -i"),并且它的配置没有任何限制会产生这样的错误。

我还四处看看是否有magento文件手动设置"set_time_limit“,但没有找到任何指向该方向的内容。我哪儿都找不到60秒的max_execution_time。

知道怎么回事吗?

编辑:

到目前为止,我已经尝试过:

  • 运行"php -d max_execution_time=0 indexer.php --reindex catalog_url“
  • 直接在indexer.php上设置“indexer.php(9000);”。
  • 运行"php -i“以查看”配置文件(php.ini)路径=> /etc/php 5/cli“和”加载配置文件=> /etc/php 5/cli/php.ini“
  • 在fpm的php.ini上将php.ini设置为61,以查看它是否是偶然使用的。
EN

回答 2

Stack Overflow用户

发布于 2013-10-29 10:23:26

PHP的cli版本可能使用的是不同的php.ini,而不是web服务器版本的PHP。

可以通过添加这一行(在<?php of indexer.php之后)来删除脚本执行时间限制。

代码语言:javascript
复制
set_time_limit(0);

Src:http://php.net/manual/en/function.set-time-limit.php

票数 1
EN

Stack Overflow用户

发布于 2013-10-29 10:30:06

这取决于您的web服务器安装(Apache2 PHP,FPM .),但是您可能会为执行CLI找到一个不同的php.ini。只需在cli/php.ini配置文件中设置时间限制并重新加载web服务器配置即可。

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

https://stackoverflow.com/questions/19655406

复制
相关文章

相似问题

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