Я использую PHP5, CodeIgniter и Apache. Локальные страницы php загрузились нормально, а затем внезапно они начали сбой Apache.
Кажется, что веб-страницы попадают на разные этапы загрузки при сбое Apache.
Единственная интересная строка в файле журнала ошибок Apache:
[notice] Parent: дочерний процесс завершен со статусом 3221225477 – Перезапуск.
В Интернете много обсуждений этой проблемы, но, похоже, нет ни одного решения, разные люди описывают различные решения, которые работали для их системы.
Предложения оценены.
Эта проблема часто возникает в Windows из-за меньшего размера стека Apache по умолчанию. И это обычно происходит при работе с php-кодом, который выделяет много стеков.
Чтобы решить эту проблему, добавьте следующее в конец файла конфигурации apache, httpd.conf
<IfModule mpm_winnt_module> ThreadStackSize 8888888 </IfModule>
И перезапустите apache. Я принимаю это решение на этом сайте .
Я нашел решение, которое сработало для меня.
Я скопировал следующие два файла из моего каталога PHP в каталог Win32, а ошибки были остановлены: php5apache.dll, libmysql.dll.
Поэтому, хотя эти файлы должны были быть найдены в каталоге PHP при определенных обстоятельствах, они должны быть в системном каталоге
У меня была эта проблема некоторое время, апач перезапускался каждые 5-15 минут. Мой сервер обслуживает множество сайтов и портал с большим трафиком, я запрограммировал этот портал, и я просто понял, что функция get_browser () иногда дает ошибку памяти (зависит от агента). Я обновил Browser.ini, никакого эффекта, перезапуск все еще происходит, но поскольку я удалялся для использования этой функции, apache больше не перезапускался. Я использую PHP 5.2.6 с Apache 2.0.5x. Надеюсь, это поможет и другим людям.
В моем случае это расширение php APC (php_apc.dll, 3.1.10-5.4-vc9-x86, threadafe), которое вызвало ошибку.
Я использовал XAMPP 1.8.2 с PHP 5.4.19 и Apache 2.4.4
Поскольку это может быть вызвано и другим расширением, это может быть хорошей отправной точкой для восстановления исходного php.ini из дистрибутива xampp. Если это хорошо работает, попробуйте изменить его по очереди на нужную конфигурацию (начиная с списка расширений).
У меня возникла проблема – и после проверки моих папок я понял, что у меня нет php5apache.dll в моей директории php. Поэтому я попытался скопировать его из папки Win32 – и он значительно улучшил ситуацию (я еще не задержу дыхание :))
Таким образом, у моего php-каталога не было libmysql.dll, это, похоже, решило проблему.
Я также добавил это в каталог win32 и каталог apache bin
Мы запускаем две копии Apache, каждая из которых имеет собственную версию PHP.
После поиска этой ошибки и попыток копирования файлов в папку system32 системы Windows я обнаружил, что проблема связана с несколькими экземплярами libmysql.dll, найденными в окне Windows.
После копирования файла libmysql.dll в папку apache bin у нас больше нет этой проблемы.
Я столкнулся с той же проблемой, когда позвонил
$link = mysql_connect('127.0.0.1', $user, $password);
из PHPscript при запуске чистой установки WampServer (http://www.wampserver.com/en/)
Я попытался скопировать DLL, как было предложено выше, но я не мог заставить его работать.
Наконец, я перешел на UniformServer (http://www.uniformserver.com/) 5.6.16, и он работал как прелесть.
Надеюсь, что этот пост может сэкономить время для кого-то 🙂
Я пробовал выше, но все они не работали.
После долгих исследований это было смешно легко: в одном из моих ajax-файлов у меня в PHP-коде была строка
mysqlclose ();
Это была проблема. Сейчас все работает отлично.
Просто упоминаю. Возможно, помогите людям немного сократить время отладки.
Это функция openssl_public_encrypt () в моем случае.
У меня была такая же проблема. Копирование dll не исправить. Поэтому я снова оглянулся и нашел эту ветку с ответом, который сработал для меня. Почему мой сервис XAMPP Apache продолжает перезагружаться?
В моей панели управления Nvidia я не видел сначала настройки FIrstPacket, поэтому я удалил Nvidia ForceWare Network Access Manager, а затем переустановил его через драйверы Nvidia. После перезагрузки параметры FirstPacket были видны, и я убедился, что он отключен, и все сработало.
Это проблема с проблемным сочетанием DLL mysql. См. Здесь для решения: http://www.java-samples.com/showtutorial.php?tutorialid=1050
Копирование DLL в system32 – это не лучшая вещь, поэтому я предлагаю правильно установить apache + php + mysql, а не копировать файлы в system32, потому что, как только DLL-файлы там, они будут загружены вместо новых DLL-версий, в будущее обновление.
Скопируйте файл php5apache.dll
из xampp\php\
в Windows\System32\