Apache+Php4+Php5+Mysql Для Windows

Не так давно возникла необходимость запустить Apache с поддержкой php4, php5 и mysql одновременно.

Знаю, что есть несколько готовых решений, но ведь под свои нужды их придется подпиливать вручную, поэтому было решено собрать такой комплект вручную.



Распределения
Использовались следующие дистрибутивы программного обеспечения: Апач: 2.2.9 PHP4: 4.4.9 PHP5: 5.2.6 MySQL: 5.0.67 Все дистрибутивы скачивались в .

zip архивах во избежание ненужных регистраций в системе.

Дистрибутив становится привязанным к конкретному диску и папке (то есть, если вы изначально все делаете в папке C:\WebServer, то на остальных компьютерах, куда вы его будете устанавливать, вам также нужно будет использовать именно эту папку).



Размещение файлов
Для начала распакуем все дистрибутивы
  • Апач: C:\WebServer\apache
  • php4: C:\Вебсервер\php\php4
  • php5: C:\WebServer\php\php5
  • MySQL: C:\WebServer\mysql
общий каталог для файлов *php будет C:\WebServer\www.

Настройка Apache
PHP4 и PHP5 будут зависать на разных портах.

Пусть это будет 80 (для php5) и 81 (для php4).

Для этого делаем 2 файла конфигурации для Apache и добавляем в них следующее.

изменения: httpd-php4.conf:

ServerRoot "C:/WebServer/apache" Listen 81 LoadFile "c:\WebServer\php\php4\php4ts.dll" DocumentRoot "C:\WebServer\www\htdocs <Directory "C:\WebServer\www\htdocs"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all

DirectoryIndex index.html index.php index.htm И т.д. в зависимости от того, что именно нам нужно от Apache. Файл php4ts.dll необходимо поместить в папку php\php4\.

Вы можете скачать это здесь: www.dll-files.ru/dll/p/Php4ts.dll.html Далее настраиваем php5, файл httpd-php5.conf:

ServerRoot "C:/WebServer/apache" Listen 80 LoadModule php5_module "c:/WebServer/php/php5/php5apache2_2.dll" AddType application/x-httpd-php .

php PHPIniDir "c:/WebServer/php/php5" DocumentRoot "C:\WebServer\www\htdocs <Directory "C:\WebServer\www\htdocs"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all

DirectoryIndex index.html index.php index.htm Установите MySQL: Никаких специальных настроек не требуется, если вы указываете порт и пароль в файле my.cnf. Поэтому пропустим это, а опишем интеграцию с php: Настройка PHP4, PHP5 Файл php\php4\php.ini

engine = On extension=php_mysql

Другие расширения включаются по желанию.

Аналогично подключаем php_mysql в php\php5\php.ini

Запуск файлов
Создайте папку bin\ для файлов запуска.

создайте в нем файл apache-php4.cmd с содержимым:

@echo OFF echo Apache + PHP4 started C:\WebServer\apache\bin\httpd.exe -f C:\WebServer\apache\conf\httpd-php4.conf &

и файл apache-php5.cmd:

@echo OFF echo Apache + PHP4 started C:\WebServer\apache\bin\httpd.exe -f C:\WebServer\apache\conf\httpd-php4.conf &

Теперь с этими двумя файлами мы можем запускать Apache с разными версиями PHP. MySQL запускается файлом mysql/bin/mysqld-nt.exe. Если статья покажется кому-то полезной, в следующей я расскажу, как сделать возможным запуск их как сервисов.

Теги: #php4 PHP5 Apache MySQL #Chulan

Вместе с данным постом часто просматривают: