【发布时间】:2017-11-18 16:44:28
【问题描述】:
PHP 版本 5.5.9 阿帕奇 2 100 次迭代完美无缺,但如果我尝试更多(例如,200 次),我得到 ERROR 500。 我检查了内存消耗,看起来还不错,大约 600KB 。所以,当我增加迭代器时,IDK 为什么会崩溃到错误。 我尝试了一些技巧,但没有运气。 IDK 为什么,但是如果脚本崩溃到 500 错误,它甚至不会显示第一个回声...所以,我不能自己调试它
以下代码:
<?
//load constantes
if (is_file('config.php')) {
require_once('config.php');
}
//set charset
ini_set("default_charset",'windows-1251');//utf-8
ini_set('display_errors', 1);
set_time_limit(600);
//create
$MyArrayOfAvailItems=array();
for($i = 0; $i < 200; $i++) {
$model_id = 5000+$i;
//echo $model_id;
//echo '
// ';
array_push($MyArrayOfAvailItems, $model_id);
}
echo $MyArrayOfAvailItems[0];
echo '
';
echo sizeof($MyArrayOfAvailItems);
echo '
';
$MyArrayOfFindedItems=array();
//$item_container = "bx_catalog_item_container";
$item_container = "Сожалеем";
/* Convert, target encoding, source encoding*/
$item_container = mb_convert_encoding($item_container, "windows-1251", "utf-8");
function populateArray2($model, $data) {
global $model;
global $data;
global $item_container;
global $recurse;
global $MyArrayOfFindedItems;
/*
if ($recurse === 1) {
echo $item_container;
echo $data;
echo 'hello world '.$model;
echo '
';
}
*/
$pos = strpos($data, $item_container);
//echo $pos;
if ($pos !== false) {
array_push($MyArrayOfFindedItems, $model);
echo $model;
echo '
';
//$recurse = 1;
//populateArray2($model, $data, $recurse);
} else {
//echo 'not found';
}
}
foreach ($MyArrayOfAvailItems as $model) {
//$item_id = 5121;
//echo $model;
//echo '
// ';
$data = file_get_contents('https://ufopeople.ru/catalog/?q='.$model);
//echo $data;
//echo '
// ';
$recurse = 0;
populateArray2($model, $data);
}
//echo $data;
echo '
';
echo memory_get_usage(true)."\n";
echo memory_get_peak_usage(true)."\n";
//echo sizeof($MyArrayOfFindedItems);
/*
foreach ($MyArrayOfFindedItems as $checkit) {
echo '
';
echo $checkit;
}
*/
仅在 apache 日志中
[core:notice] [pid 20070] AH00052: child pid 17126 exit signal Segmentation fault (11)
与我收到错误 500 无关的时间
【问题讨论】:
-
(错误)日志中的任何内容?
-
我应该在哪里检查它们?我使用 Ubuntu 14.04 LTS
-
@Fred-ii- [core:notice] [pid 20070] AH00052: child pid 17126 exit signal Segmentation fault (11) only that I found in my logs.记录的时间与我得到 ERROR 500 无关
标签: php performance loops runtime-error