
Локальный сервер Денвер изначально комплектуется устаревшими сборками PHP, что ограничивает использование современных фреймворков и CMS. Чтобы обеспечить поддержку актуальных стандартов, необходимо заменить встроенный интерпретатор на более свежую версию.
Перед началом важно определить, какая версия PHP требуется проекту. Например, Laravel 10 корректно работает только с PHP 8.1 и выше, тогда как WordPress 6.3 официально рекомендует PHP 7.4 или 8.x. Соответствие версии критично для безопасности и стабильности работы.
Процесс обновления в Денвере сводится к установке новой сборки PHP, корректировке конфигурационных файлов и настройке совместимости с Apache. В отличие от стандартных дистрибутивов серверов, здесь приходится вручную подключать модули, редактировать путь к исполняемым файлам и обновлять расширения, без чего среда работать не будет.
Проверка текущей версии PHP в Денвере
Чтобы узнать, какая версия PHP используется в локальном сервере Денвер, выполните одно из следующих действий:
- Создайте файл
phpinfo.phpв папке\WebServers\home\localhost\wwwсо строкой:<?php phpinfo(); ?>
После сохранения откройте в браузереhttp://localhost/phpinfo.php. В первой строке таблицы будет указана точная версия. - В меню «Пуск» Денвера выберите пункт «Серверная информация» → «Информация о PHP». Будет открыт тот же отчёт
phpinfo(), но без необходимости вручную создавать файл.
Рекомендуется использовать метод с phpinfo(), так как он показывает не только номер версии, но и активные модули, настройки расширений и параметры конфигурации.
Скачивание нужной версии PHP с официального сайта
Перейдите на страницу загрузки PHP: https://windows.php.net/download/. Для Денвера подходят сборки под Windows в формате ZIP.
Выберите ветку PHP, совместимую с вашим проектом (например, 7.4, 8.0 или 8.1). Обратите внимание на тип сборки: используйте Thread Safe, так как Денвер работает с Apache, требующим многопоточности.
Архитектуру выбирайте в соответствии с разрядностью Apache, установленного в Денвере: x86 для 32-битной версии и x64 для 64-битной.
Скачайте файл вида php-версия-Win32-vc15-x86.zip или аналогичный, где vc15 или vs16 указывает на используемый компилятор. Несовпадение может вызвать ошибки при запуске.
Сохраните архив в отдельную папку, например C:\denwer\usr\local\php\, чтобы далее заменить текущую версию.
Распаковка и размещение новых файлов PHP в каталоге Денвера
После скачивания архива с нужной версией PHP извлеките его содержимое с сохранением структуры каталогов. Для корректной работы необходимо, чтобы внутри папки находились подпапки ext, extras, а также файлы php.exe, php.ini-development, php.ini-production и другие системные библиотеки.
В Денвере рабочие версии PHP располагаются в каталоге denwer/usr/local/phpX, где X – номер версии. Создайте новую папку с обозначением версии, например php-8.2, и перенесите в неё извлечённые файлы.
После копирования проверьте наличие обязательных DLL-библиотек (php8ts.dll, libssl-*.dll, libcrypto-*.dll) и соответствие структуры старым версиям. Если в архиве отсутствует файл php.ini, скопируйте и переименуйте php.ini-development или php.ini-production в php.ini для дальнейшей настройки.
Для исключения конфликтов удалите старые временные каталоги tmp и кэшированные данные внутри denwer/tmp, но не трогайте рабочие версии PHP. После подготовки файлов можно переходить к настройке конфигурации и переключению версии в Денвере.
Настройка файла httpd.conf для подключения новой версии PHP

После копирования новой сборки PHP в каталог /usr/local/php (или другой выбранный путь), необходимо внести изменения в файл httpd.conf, расположенный в папке denwer/usr/local/apache/conf/.
Найдите строки, отвечающие за загрузку модуля PHP, и замените их на актуальные пути. Для Apache 2.2 обычно используется модуль php5apache2_2.dll, для Apache 2.4 – php7apache2_4.dll или php8apache2_4.dll в зависимости от версии.
| Старая запись | Новая запись |
|---|---|
LoadModule php5_module "C:/WebServers/usr/local/php5/php5apache2_2.dll" |
LoadModule php_module "C:/WebServers/usr/local/php8/php8apache2_4.dll" |
Далее обновите директивы PHPIniDir и AddType:
| Директива | Пример значения |
|---|---|
PHPIniDir |
"C:/WebServers/usr/local/php8" |
AddType |
application/x-httpd-php .php |
После сохранения файла перезапустите Apache через панель управления Денвера. Для проверки используйте phpinfo() в тестовом скрипте и убедитесь, что активна новая версия PHP.
Изменение файла php.ini под требования проекта
Файл php.ini в Денвере находится по пути \usr\local\php5\php.ini. Перед изменениями сделайте резервную копию, чтобы при ошибке можно было вернуть исходное состояние.
Для проектов с большим количеством загружаемых данных увеличьте параметр upload_max_filesize, например: upload_max_filesize = 64M. Чтобы разрешить загрузку нескольких крупных файлов одновременно, измените post_max_size, установив значение большее, чем upload_max_filesize, например: post_max_size = 128M.
При работе со скриптами, выполняющимися дольше стандартного лимита, увеличьте время исполнения: max_execution_time = 120. Для скриптов, активно использующих память, измените memory_limit, например: memory_limit = 512M.
Для корректной работы с кодировкой используйте строку: default_charset = "UTF-8". Если проект требует работы с расширениями, проверьте наличие строк вида extension=php_mbstring.dll или extension=php_curl.dll, раскомментировав их при необходимости.
После внесения изменений перезапустите Денвер через меню «Restart». Это применит новые параметры конфигурации.
Перезапуск Денвера для применения изменений

После обновления версии PHP в Денвере необходимо полностью перезапустить сервер, чтобы новая конфигурация вступила в силу. Простое перезапускание отдельных модулей не гарантирует корректной работы.
- Закройте все открытые проекты и остановите текущие службы Денвера через трей:
- Щелкните правой кнопкой по иконке Денвера в системном трее.
- Выберите пункт Stop All или Выключить все службы.
- Проверьте, что процессы Apache и MySQL полностью завершены:
- Откройте Диспетчер задач (Ctrl+Shift+Esc).
- Убедитесь, что процессы httpd.exe и mysqld.exe отсутствуют. Если остались, завершите их вручную.
- Запустите Денвер заново:
- Щелкните по иконке в трее и выберите Start All или Запустить все службы.
- Подождите появления статуса Работает для Apache и MySQL.
- Проверьте активную версию PHP:
- Откройте терминал Денвера или командную строку.
- Введите команду
php -vи убедитесь, что отображается новая версия.
Если после перезапуска возникают ошибки, проверьте конфигурационные файлы httpd.conf и php.ini на соответствие новой версии PHP и отсутствие устаревших путей.
Регулярный перезапуск Денвера после изменений в PHP минимизирует конфликты между модулями и обеспечивает стабильную работу локальных проектов.
Проверка работы новой версии PHP через phpinfo()

После обновления PHP в Денвере необходимо убедиться, что новая версия активна и работает корректно. Для этого создайте в корневой папке вашего локального проекта файл с именем info.php.
Внутри файла вставьте следующий код: <?php phpinfo(); ?>. Сохраните изменения.
Откройте браузер и перейдите по адресу http://localhost/info.php. На странице отобразится подробная информация о текущей версии PHP, загруженных модулях, настройках конфигурации и путях к ini-файлам.
Проверьте значение строки PHP Version в верхней части страницы. Оно должно совпадать с версией, на которую вы обновляли Денвер. Убедитесь, что все необходимые расширения, например pdo_mysql или mbstring, активированы.
Если версия PHP отображается старой, убедитесь, что в файле settings.ini Денвера указана правильная версия, и перезапустите сервер через панель управления Денвера.
После успешной проверки можно удалить info.php для предотвращения утечки информации о конфигурации сервера.
Вопрос-ответ:
Как узнать текущую версию PHP в Денвере перед обновлением?
Чтобы проверить версию PHP, запустите Денвер и откройте локальный сайт с файлом phpinfo.php, в котором будет строка <?php phpinfo(); ?>. На открывшейся странице будет указана текущая версия PHP и список активных расширений. Это помогает убедиться, что после обновления выбранная версия будет корректно работать с вашим проектом.
Где скачать нужную версию PHP для Денвера?
Все версии PHP для Денвера находятся на официальном сайте проекта или на репозиториях, поддерживающих Windows. Обычно скачивают архив ZIP с требуемой версией PHP и распаковывают его в отдельную папку в каталоге \WebServers\usr\local\php. После этого можно настроить Денвер на использование новой версии, изменив соответствующие параметры в конфигурационных файлах.
Как переключить Денвер на другую версию PHP?
После добавления новой версии PHP в папку Денвера необходимо открыть файл settings.ini или через интерфейс Денвера выбрать раздел PHP. Там указывается путь к новой версии. Перезапустите все службы Денвера, чтобы изменения вступили в силу. После этого можно снова открыть phpinfo.php, чтобы убедиться, что новая версия активна.
Что делать, если после обновления PHP появляются ошибки в проектах?
Если после обновления возникают ошибки, чаще всего это связано с несовместимостью кода или отсутствием нужных расширений. Проверьте журнал ошибок PHP и убедитесь, что все расширения, которые использовались в старой версии, активны в новой. Иногда помогает временное включение режима отображения ошибок, чтобы точнее определить причину проблем. В крайнем случае можно откатить изменения и использовать предыдущую версию.
Можно ли использовать несколько версий PHP одновременно в Денвере?
Да, Денвер позволяет иметь несколько версий PHP одновременно. Для этого каждая версия распаковывается в отдельную папку, а в настройках указываются пути к разным версиям. При запуске конкретного проекта можно выбрать нужную версию, что удобно для тестирования совместимости сайта или работы с проектами на разных версиях PHP.
Как проверить текущую версию PHP в Денвере перед обновлением?
Для проверки версии PHP в Денвере откройте папку, где установлен сервер, и найдите файл php.exe в соответствующей версии PHP. После этого запустите командную строку, перейдите в каталог с php.exe и введите команду php -v. В ответ вы увидите номер текущей версии PHP, а также дату сборки и дополнительные параметры. Это позволит убедиться, какая версия используется, прежде чем менять файлы и настройки, чтобы избежать конфликтов с уже установленными проектами.
