Вот проблема. Вылетает сообщение "Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 518666144 bytes) in Unknown on line 0". Казалось бы. известная проблема. Только вот весь код index.php: Код (Text): <?php echo 'memory_get_usage() before:' . memory_get_usage(true) . '<br/>'; set_include_path( get_include_path() ); echo 'memory_get_usage() after:' . memory_get_usage(true) . '<br/>'; То есть на set_include_path требуется 500 мегов. Проверил для интереса get_include_path - там 2 пути общим размеров в 53 символа. Первая мысль - проблема в серваке. Только как это исправить или хотя бы определить эту проблему.
php.ini проверь где лежит и где его сервак ищет. У меня на курсах такое было, потому что php.ini не подхватился и лимит установился такой, что скрипт даже phpinfo() вывести не мог. Слава богу php ini dir в самом верху
Дело в том, что на серваке с десяток проектов с нехилой нагрузкой - на них все ок. Во вторых доступа к php.ini у меня нету. А в третьих, как оказалось, эта проблема выявляется только после set_include_path, причем скрипт отрабатывается до конца всегда, но Fatal Error появляется все равно. Потому выход виду только один - либы, требующие добавить что-то в set_include_path - бросить в корень и запретить http-чтение.
Лимит 128М, как можно заметить. haspadar, а что у тебя есть кроме этих 3х строк? И скрипт выполняется отдельно? или подключается где-то? P.S. php.ini - prepend_file проверь еще
Выполняется скрипт отдельно. auto_prepend_file и auto_append_file утановлены в ''. Почему Вы думаете, php.ini не подхватился? Там 128 и прописано. Помимо set_include_path больше кода в этом файле нет. Нет, циклических ссылок нет. И энкодэров не установлено. Вот phpinfo http://nodes1.com/km/phpinfo.php
haspadar http://nodes1.com/km/index.php Это тот index.php Что-то он бред какой-то выдает. Либо он не такой как ты привел. Либо у тебя проблемы с сервером.
GET http://nodes1.com/km/index.php HTTP/1.1 200 OK Date: Sat, 21 Nov 2009 10:44:17 GMT Server: Apache/2.2.13 (Unix) mod_ssl/2.2.13 OpenSSL/0.9.8e-fips-rhel5 DAV/2 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 X-Powered-By: PHP/5.2.11 Keep-Alive: timeout=5, max=100 Connection: Keep-Alive Content-Type: text/html; charset=utf-8 Content-Length: 847898 Малость не "але"
нет, вот ссылка http://nodes1.com/km/index2.php С http://nodes1.com/km/index.php другая проблема - если нет выводимого контента, то есть респонс пустой - выводится такая каша. Перепробовал все кодировки - ничего. С сервером однозначно какая-то проблема, только на нем находится около 10 важныхпроектов,так что даже перезапустить попросить не получится.
Только сейчас там нет memory_get_usage и выводится all right, чтобы не выпадал этот дамп. Только seti_include_path и echo.
Fatal error Allowed memory size in Unknown on line 0 Ошибка "Allowed memory size of X bytes exhausted tried to allocate Y bytes" - говорит о том что вашему скрипту не хватает памяти, точнее скрипт не укладывается в тот обьем памяти который разрешен для выполнения PHP скриптами. В таких случаях обычно помогает изменение настроек, выберите подходящий: memory_limit = 12M - опция в вашем php.ini файле рекомендуется если есть доступ, действует на все скрипты на сервере ini_setmemory_limit, 12M; - php-код в начале проблемных скриптов. php_value memory_limit 12M - опция в .htaccess файле той папки в которой запускается скрипт. Вместо 12M подставляем необходимый обьем памяти, например по нарастающей, пока ошбка не перестанет вылазить, значение по умолчанию обычно 8M мегабайт.