Страница 1 из 1

Fatal error: Maximum call stack size of 18446744073709518848 bytes

Добавлено: 16 сен 2024, 08:17
Valdemar47
Здравствуйте!
Установил drupal 11 (Php 8.3). При установке возникла ошибка: Fatal error: Maximum call stack size of 18446744073709518848 bytes (zend.max_allowed_stack_size - zend.reserved_stack_size) reached during compilation. Try splitting expression in C:\OSPanel\home\geshe\recommended-project\web\core\install.php on line 11
Аналогичная ошибка периодически возникает при работе с сайтом: Fatal error: Maximum call stack size of 18446744073709518848 bytes (zend.max_allowed_stack_size - zend.reserved_stack_size) reached during compilation. Try splitting expression in C:\OSPanel\home\geshe\recommended-project\web\index.php on line 14

Рекомендации:
Для PHP 8.3 необходимо установить:
zend.max_allowed_stack_size = 8388608

Для Apache (любой модуль):
ThreadStackSize 8388608
и
#ThreadsPerChild 128
желательно заменить на
ThreadsPerChild 32
чтобы не потребляло слишком много памяти.

Не помогают.

Как избавиться от этой ошибки?
С уважением, Владимир.

Re: Fatal error: Maximum call stack size of 18446744073709518848 bytes

Добавлено: 10 окт 2024, 03:52
lexkiev
Возникла та же проблема с Drupal 10, решение помогло поставить zend.max_allowed_stack_size = 0

Re: Fatal error: Maximum call stack size of 18446744073709518848 bytes

Добавлено: 19 янв 2025, 16:45
HeavyLogic
У меня тоже самое, но это вообще не связано с Drupal. Модули у меня PHP 8.3 и MySQL 8.2. Оно стреляет периодически и в Wordpress и в самых простейших PHP-скриптах. Вот элементарный скрипт, в котором я получил эту ошибку только что:
<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport"
		  content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
	<meta http-equiv="X-UA-Compatible" content="ie=edge">
	<title>Open Server</title>
	<style>
		body {
			font-size: 30px;
		}
	</style>
</head>
<body>
<ul>
	<li><a href="https://phpmyadmin.localdomains.loc">phpMyAdmin</a></li>
<?php

$dirs = scandir('../../');

foreach ($dirs as $dir) {
	if ($dir == 'localhost') {
		continue;
	}
	
	if (file_exists('../../'.$dir.'/www') or file_exists('../../'.$dir.'/public_html')) {
		echo '<li><a href="https://'.$dir.'">'.$dir.'</a></li>';
	}
}

?>
</ul>
</body>
</html>
Ошибка следующая:
Fatal error: Maximum call stack size of 18446744073709518848 bytes (zend.max_allowed_stack_size - zend.reserved_stack_size) reached during compilation. Try splitting expression in D:\Work\OpenServer\home\localdomains.loc\www\index.php on line 1
Ругнулось на первую строчку, где вообще HTML. При этом, я уже пробовал это решение: viewtopic.php?p=32666#p32666
Изменения вносил в файлах httpd.conf и php.ini по такому пути:
D:\Work\OpenServer\modules\PHP-8.3\ospanel_data\default\templates\
Выглядит это так - ошибка стреляет моментально, ещё до того, как страница успела начать загружаться. Ощущение такое, что на сервере копится какой-то лимит, пока ты открываешь разные страницы. Хотя, какой лимит мог переполнится, если я сейчас только запустил сервер? Я открыл скрипт, выложенный выше, решил увеличить на нём шрифт, и пока подбирал, обновил страницу раза 4 - уже вылезла ошибка.