RuWeb.net - хостинг и регистрация доменных имен
ГЛАВНАЯ ХОСТИНГ ДОМЕНЫ VDS СЕРВЕР ИНФОРМАЦИЯ КЛИЕНТЫ ПРАВИЛА ОПЛАТА ЗАКАЗ ФОРУМ
go to bottom

Версия для печати | Подписаться | Добавить в избранное  
Автор: Тема: вопрос после переезда на FreeBSD-8 и 9: куда делся режим "PHP как FastCGI"?
timru
Administrator
********




Сообщения: 48
Зарегистрирован: 12.10.2008
Пользователя нет на форуме

[*] когда размещено 30.12.2011 в 23:59
вопрос после переезда на FreeBSD-8 и 9: куда делся режим "PHP как FastCGI"?


В шаблонах VDS для FreeBSD-6 имелось 3 режима работы PHP:
- PHP как модуль Apache;
- PHP как CGI;
- PHP как FastCGI.

Во FreeBSD-8 и 9 их только два:
- PHP как модуль Apache;
- PHP как CGI.

Поэтому часто приходится слышать вопрос: куда делся режим "PHP как FastCGI"?

Дело в том, что режим "PHP как модуль Apache" на новых VDS претерпел изменения. Теперь Apache там собран с поддержкой MPM-ITK, который позволяет запуск каждого виртуального хоста под отдельными uid и gid. Иными словами, php-скрипты в этом режиме будут обрабатываться от имени владельца домена, что повышает безопасность и снимает некоторые ограничения (например, safe mode - отключен).
Таким образом, в большинстве случаев оптимальным режимом работы PHP на VDS с FreeBSD-8 теперь является "PHP как модуль Apache".



Что делать, если для сайта крайне необходим режим "PHP как FastCGI"?

К сожалению, просто так вернуть его не получится - в частности нужно пересобрать Apache без поддержки MPM-ITK. Это означает, что он перестанет обновляться автоматически вместе с шаблоном, и забота об актуальности Apache в дальнейшем целиком ложится на плечи владельца VDS.

Если вы понимаете последствия данного шага, вернуть "PHP как FastCGI" можно следующим образом:

1) открываем файл /etc/make.conf и удаляем строчку "WITH_MPM=itk" из блока:

.if ${.CURDIR:N*/usr/ports/www/apache22} == ""
WITH_MPM=itk
WITH_SUEXEC=yes
SUEXEC_DOCROOT=/
WITH_PROXY_MODULES=yes
.endif

2) удаляем apache-itk:
# pkg_delete -f apache-itk-2.2.21

3) устанавливаем apache (без itk):
# cd /usr/ports/www/apache22 && make install clean

4) устанавливаем mod_fcgid:
# cd /usr/ports/www/mod_fcgid && make install clean

5) открываем файл /usr/local/etc/apache22/httpd.conf и добавляем строчку:
LoadModule fcgid_module libexec/apache22/mod_fcgid.so

6) в том же файле во всех виртуальных хостах (если они уже есть) меняем:
AssignUserID имя_юзера имя_юзера
на
SuexecUserGroup имя_юзера имя_юзера

7) открываем файл /usr/local/ispmgr/etc/ispmgr.conf и удаляем оттуда строчку:
Option ApacheMPM

8) убиваем все процессы ISPmanager:
# killall ispmgr

9) если после этого режим "PHP как FastCGI" не появился, добавляем строчку:
Option ForcePhpFastCgi
в файл /usr/local/ispmgr/etc/ispmgr.conf и повторяем пункт 8.

Все эти действия вместо вас могут выполнить платно сотрудники нашей техподдержки (1 час работы специалиста).



[Отредактировано 11.6.2013 кто timru]
Просмотреть Профиль Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение

Powered by XMB
Разработано Группа XMB © 2001-2008
[запросов: 21] [PHP: 60.4% - SQL: 39.6%]
go to top
Центр поддержки (круглосуточно)
https://ruweb.net/support/
Москва(499) 502-44-31
Санкт-Петербург(812) 336-42-55
Нижний Новгород(831) 411-12-44
Екатеринбург(343) 204-71-16
© 2002-2013 ЗАО "РУВЕБ"

Дизайн - CredoDesign
Rambler\'s Top100 Рейтинг@Mail.ru
RuWeb.net - Хостинг веб-сайтов (первый месяц - бесплатно). Регистрация доменов.