Зависание сервера.

zIP

Новичок
Зависание сервера.

Не нашел куда запостить.

Win XP

Apach 2.0.55; PHP 5.1.2; MySql 4.0.18

Иногда происходит зависание сервера. Начинает грузиться какая нибудь страница большого объема и если прервать ее загрузку, то потом нельзя открыть вообще ничего.

Пишет узел найден. Начинается загрузка и дождаться окончания невозможно.

Если перегрузить сервер, все начинает работать нормально. Рестарт Апача не помогает.

Это может быть из-за использования такой функции:
PHP:
	if ($send != "no") {
		$sender_name = removecrlf(filter($sender_name, nohtml));
		$sender_email = removecrlf(filter($sender_email, nohtml));
		$message = filter($message, nohtml);
		$msg = "$sitename\n\n";
		$msg .= ""._SENDERNAME.": $sender_name\n";
		$msg .= ""._SENDEREMAIL.": $sender_email\n";
		$msg .= ""._MESSAGE.": $message\n\n";
		$to = $adminmail;
        	$mailheaders = "Content-Type: text/plain; charset="._CHARSET."\n";
		$mailheaders .= "From: $sender_name <$sender_email>\n";
		$mailheaders .= "Reply-To: $sender_email\n\n";
		mail($to, $subject, $msg, $mailheaders);
		echo "<P><center>"._FBMAILSENT."</center></p>";
		echo "<P><center>"._FBTHANKSFORCONTACT."</center></p>";
    echo "$mailheaders ";
	} elseif ($send == "no") {
		OpenTable2();
		echo "$name_err";
		echo "$email_err";
		echo "$message_err";
		CloseTable2();
		echo "<br><br>";
		echo "$form_block";
	}
 

ZN

Новичок
а откуда мы знаем, что делают removecrlf(), filter(), OpenTable2() и CloseTable2() ?
 

zIP

Новичок
Тогда перефразирую.

А как избежать зависания сервера? Как это ограничить в php.ini и конфиге апача?
 

ZN

Новичок
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;

max_execution_time = 30 ; Maximum execution time of each script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
memory_limit = 8M ; Maximum amount of memory a script may consume (8MB)
 

ZN

Новичок
в конфе апача
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300
 

ZN

Новичок
zIP
ну я больше ничего не знаю
в апаче по дефолту 300 стоит
 

zIP

Новичок
спасибо.

А если поставить.

max_execution_time = 30 ; Maximum execution time of each script, in seconds

Скрипт может вываливаться по таймауту при открытии файла через freead() или fopen() большого размера?
 

ZN

Новичок
The maximum execution time is not affected by system calls, stream operations etc. Please see the set_time_limit() function for more details.
rtfm
 

zIP

Новичок
Почитал. Ничего не понял.

Но самое интересное, что когда пхп стоял как исполняемое приложение к апачу, то проблем такого рода не было.

Но стоило его поставить как модуль... Тут и началась эта фигня.
 

SiMM

Новичок
Из install.txt, идущего в комплекте поставки с PHP
Apache 2.0.x on Microsoft Windows
...
Warning

We do not recommend using a threaded MPM in production with Apache2. Use the prefork MPM instead, or use Apache1. For information on why, read the related FAQ entry on using Apache2 with a threaded MPM
 

zIP

Новичок
Из этого следует, что надо либо поставить пхп 4.х или Апач 1?
 
Сверху