Если у Вас установлен Apache, то сделайте сперва копию папки установленной программы и аналогично для PHP.1. Сначала удаляем все, что связано с установками Apache и PHP из реестра. (панель управления->установка удаление программ (в XP) панель управления->программы и компоненты (Vista и windows7) удаляем Apache и PHP)
2. Ставим два Apache в разные папки (из копии, не инсталятором .msi). Если нет копии, то пользуемся инсталлятором [[http://www.sai.msu.su/apache/httpd/binaries/win32/apache_2.2... apache_2.2.14-win32-x86-no_ssl.msi]], делаем копию установленной программы и снова ее удаляем.
Создаем две папки (например D:\usr\apache22 и D:\usr\apache253) и копируем туда наш апач. Один Apache настраиваем на порт 8080 (главное не 80), второй на 8088. Правим httpd.conf, указав правильные пути для корня серверов, каждый для своей папки и указываем соответствующие порты для прослушивания.3. Устанавливаем каждый Apache как сервис.
из командной строки:httpd -n apache22 -k install - под этот апач поставим PHP 5.2
httpd -n apache253 -k install - под этот апач поставим PHP 5.34. Ставим PHP 5.2 в папку php (например D:\usr\php) из [[http://ru.php.net/get/php-5.2.11-Win32.zip/from/a/mirror архива]], а PHP 5.3 в папку php53 (например D:\usr\php53) из [[http://windows.php.net/downloads/releases/php-5.3.0-Win32-VC... архива]] (обращайте внимание на версии PHP, они есть и x64, выбирайте необходимую Вам).
5. Прописываем в httpd.conf модули подключения PHP
LoadModule php5_module "D:/usr/local/php53/php5apache2_2.dll"
PHPIniDir "D:/usr/local/php53"
AddType application/x-httpd-php .phpЗапускаем Apache. Можно монитором из папки bin ApacheMonitor.exe
или из командной строки:httpd -n apache22 -k start
httpd -n apache253 -k startЕсли Apache при запуске выдал ошибку, не связанную с синтаксисом (неопознанную), копируем php5ts.dll из директории php в папку apache/bin.
Если в реестре не осталось упоминаний о PHP, то все заработает. Если не запустилось, проверьте переменные окружения windows на PHPRC. Их не должно быть.
В windows 7 все запустилось без проблем.
6. Теперь для удобства, можно поставить [[http://sysoev.ru/nginx/docs/windows.html nginx]], изменив его конфигурацию примерно так:
server {
listen *:80;
server_name site.ru;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}server {
listen *:80;
server_name site53.ru;
location / {
proxy_pass http://127.0.0.1:8088;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}Теперь просто можно тестировать обе версии PHP.
На site.ru - ответит apache c PHP 5.2, а на site53.ru - apache PHP 5.3URL:
Обсуждается: http://www.opennet.me/tips/info/2197.shtml
Вот кто бы мне объяснил - ЗАЧЕМ это? Чтобы потом, переходя на продакшн на никсы, получить проблемы с разрешениями?Или кто-то держит apache+php в продакшне на винде?
наверное нужно для девелоперов сопровождающих различные проекты....
так пускай такие девелоуперы сами себе голову и ломают над проблемой.
>Вот кто бы мне объяснил - ЗАЧЕМ это? Чтобы потом, переходя на
>продакшн на никсыЗАЧЕМ переходить на никсы?
Потому что серверные винды - дорогие и бестолковые.А домашние - паршивы как сервер, ибо TCP/IP стек искусственно покоцаный "для борьбы с DDoS-ами" (а заодно и стимулирования покупки серверной винды с более другой ценой).P.S. дожили - советы по винде - на опеннете! :E
>Потому что серверные винды - дорогие и бестолковые.мужики-то не знали
>TCP/IP стек искусственно покоцаный
ерунда. правятся несколько байтов
>советы по винде - на опеннете!
и правильно.
это opennet, а не linuksdrochernet
уясните разницу
>мужики-то не зналиИх половые трудности, имхо.
>>TCP/IP стек искусственно покоцаный
>ерунда. правятся несколько байтовУгу... и караулится каждый апдейт, а то вдруг он ненароком этот драйверок обновит? В общем - см. про пример про автомобиль и вендора любезно проверяющего нас на внимательность путем регулярного минирования территории и подкладки растяжек под авто или бомб в багажник. Приятной поездки:).
>это opennet,
И каким боком к нему относится винда??
>>это opennet,
>
>И каким боком к нему относится винда??в новости обсуждается:
а) Apache. Лиценизия Apache Software License. FLOSS!!!
б) PHP. Лицензия PHP License. FLOSS!!1
в) nginx. Лицензия BSD. FLOSS!!!
"винда" в статье не обсуждается, обсуждаются сервисы на её основе.
надеюсь, так понятно даже самым упоротым фанатикам.другой вопрос - качество самой статьи.
> "винда" в статье не обсуждается, обсуждаются сервисы на её основе.Примерно один хрен по смыслу, вы не находите? :)
> надеюсь, так понятно даже самым упоротым фанатикам.
Ну... если проприетарщик со стажем, юзавший виндозу более десятка лет может стать фанатом опенсорс, при том настолько что его начнут обвинять в красноглазии - значит, для этого мира еще не все потеряно. Где-то так, имхо :-).И да, я рад этим изменениям. Мне они нравятся - все познается в сравнении.Извините, но открытые модели разработки - рулят :P.
>> "винда" в статье не обсуждается, обсуждаются сервисы на её основе.
>
>Примерно один хрен по смыслу, вы не находите? :)не нахожу.
>юзавший виндозу более десятка лет может стать фанатом опенсорс
ничего удивительного. десять лет назад linux представлял из себя Уг. сейчас просто г, веселенькое, с кампизом. а винда работала и тогда, и сейчас.
>открытые модели разработки - рулят
иногда рулят, иногда нет. беда в том, что в большинстве случаев "открытая модель разработки" означает "бесплатно поработай на дядю, размахивающим gpl или bsd".
>десять лет назад linux представлял из себя Уг. сейчас просто г, веселенькое, с кампизом. а винда работала и тогда, и сейчас.а ведь правда)))
зачем 2 копии апача?
Статья не соответствует теме - в теме написано про ОДНОВРЕМЕННУЮ работу. А как выясняется, работают они не одновременно друг с другом, а вообще под разными копиями апачей.
Если требуется для разработчика две версии ПХП, то всегда проще без наворотов nginx и двух копий апача прикрутить одну версию через модуль, вторую через fast-cgi.
Про винды на опеннете согласен - моральное разложение. Всё равно, что прийти на мотогонки с трёхколёсным велосипедом.
Статья - рачло. Во первых - никакой одновременной работы, а 2 тушки. Во вторых - куда элегантнее все было бы решить через cgi/fastcgi одной тушкой. Касательно nginx - пусть автор откроет для себя fastcgi, а не прокси к апачу, и убьет себя ап стену. А вообще согласен с предыдущими ораторами - на удивление дурацкая заметка.
У нас так шаред построен. Клиенты могут почти мгновенно переключить версию без особых проблем.
Не как в статье, конечно, и на фронте haproxy, и на бэке сделано по уму, но суть та же, метод правильный.
На cgi/fastcgi на хостинге я насмотрелся, спасибо, нет.
А имхо надо просто установить VMWare, в нём создать 2 виртуальные машины и поставить в одну ИИС с пхп52, а в другую ИИС с пхп53. И никаких проблем с чисткой реестра и ваще. Потом всё это дело через НАТ вывести в инет, и вперёд - 1М посещений в сутки гарантировано... Главное - можно создавать столько виртуалок, сколько пожелаете, а венды и ИИС установить гораздо проще, чем сконфигурировать апач/нгинх с пхп в режиме CGI/FastCGI (про unix молчу). А ваще никак не пойму, зачем пхп, если есть АСП? Что-то тут явно не так. А не пиратские ли венды у автора случаем?