Данный туториал нам не подошел, потому что на фирме действует документ, регламентирующий структуру директорий на локалке, и все сайты (около 250) у нас лежат в одной директории. Понимаю и не устаю повторять, что данный документ это полный бред, но начальство не переубедишь. Поэтому возникла необходимость быстро переключаться между версиями PHP ничего никуда не перемещая, без «этих ваших денверов и опынсерверов и прочего, все должно быть с коробки, приду правэрю, иначе уволю!».
И так, структура директорий:
В C:\Server\Apache24\conf\ копируем/вставляем 3 копии httpd.conf и переименовываем их в httpd55.conf, httpd56.conf и httpd7.conf, каждый файл конфигурации для своей версии PHP соответственно. Я сначала сконфигурировал один конфиг апача, затем после его копипасты на 3 файла подключил в каждом файле:
Далее через консоль создаем 3 сервиса Windows для каждой версии PHP, указывая какой конфиг будет использовать апач:
Не забудьте оставить автозапуск только у одной службы Апача. У меня стоит только у PHP5.6, на PHP5.5 и PHP7 переключаюсь по необходимости.
Результат:

P.S. За этот костыль мне даже премию выдали :)
И так, структура директорий:
C:\Server\Apache24
C:\Server\PHP55
C:\Server\PHP56
C:\Server\PHP57
C:\Server\home тут директории с сайтами
В C:\Server\Apache24\conf\ копируем/вставляем 3 копии httpd.conf и переименовываем их в httpd55.conf, httpd56.conf и httpd7.conf, каждый файл конфигурации для своей версии PHP соответственно. Я сначала сконфигурировал один конфиг апача, затем после его копипасты на 3 файла подключил в каждом файле:
свои версии PHP
#конфиг httpd55.conf LoadModule php5_module "C:/Server/PHP55/php5apache2_4.dll" <IfModule php5_module> AddHandler application/x-httpd-php .php PHPIniDir "C:/Server/PHP55" </IfModule> #конфиг httpd56.conf LoadModule php5_module "C:/Server/PHP56/php5apache2_4.dll" <IfModule php5_module> AddHandler application/x-httpd-php .php PHPIniDir "C:/Server/PHP56" </IfModule> #конфиг httpd7.conf LoadModule php7_module "C:/Server/PHP7/php7apache2_4.dll" <IfModule php7_module> AddHandler application/x-httpd-php .php PHPIniDir "C:/Server/PHP7" </IfModule>
Далее через консоль создаем 3 сервиса Windows для каждой версии PHP, указывая какой конфиг будет использовать апач:
C:\Server\Apache24\bin\httpd.exe -k install -n "Apache PHP5.5" -f "C:\Server\Apache24\conf\httpd55.conf" C:\Server\Apache24\bin\httpd.exe -k install -n "Apache PHP5.6" -f "C:\Server\Apache24\conf\httpd56.conf" C:\Server\Apache24\bin\httpd.exe -k install -n "Apache PHP7" -f "C:\Server\Apache24\conf\httpd7.conf"
Не забудьте оставить автозапуск только у одной службы Апача. У меня стоит только у PHP5.6, на PHP5.5 и PHP7 переключаюсь по необходимости.
Результат:

- можно конфигурировать каждый Apache сервер под свой PHP
- для смены версии PHP достаточно остановить один сервер и запустить другой из ApacheMonitor
P.S. За этот костыль мне даже премию выдали :)
