Оглавление:
Статья последний раз была обновлена 04.03.2023
Установка mpm-itk на CentOS/ISPmanager
Содержание[убрать] |
[править] Преимущества mpm-itk
Как известно, при установка интерпретатора PHP в качестве модуля веб-сервера Apache обеспечивает максимальную скорость работы интерпретатора, но при этом имеет некоторые недостатки, наиболее существенным из которых является запуск PHP от имени того системного пользователя, от которого запускается сам Apache. Это приводит к необходимости устанавливать на файлы скриптов разрешение на запись для всех (права доступа 666), что негативно влияет на безопасность, или же устанавливать владельцем файлов пользователя Apache, что затрудняет работу со скриптами для пользователя, которому они принадлежат.
Patch ITK успешно решает эту проблему, позволяя Apache обрабатывать запросы к виртуальным хостам (сайтам пользователей) от имени пользователя — владельца сайта. Тем самым, сохраняются преимущества установки PHP как модуля Apache, и решаются проблемы с правами доступа на скрипты PHP.
[править] Проверка наличия бинарного файла mpm-itk
Перед настройкой mpm-itk необходимо проверить, имеется ли бинарный файл mpm-itk на сервере (это зависит от того, как был скомпилирован пакет Apache). Для этого выполняем следующие действия:
Подключаемся к серверу по средствам SSH протокола:
ssh root@123.123.123.123
Проверяем, имеется ли на сервере бинарный файл httpd.itk, который обычно расположен в /usr/sbin/httpd.itk :
stat /usr/sbin/httpd.itk
Если имеется,приступаем к следующему шагу, если нет,необходимо произвести его установку.
[править] Установка MPM-ITK
Подключаем репозиторий CentALT. Ссылка на RPM-файлы репозитория (CentOS 5,6; i386/i686/x86_64)
http://centos.alt.ru/pub/repository/centos/6/i386/centalt-release-6-1.noarch.rpm
После чего выполняем команду:
yum update httpd
Подтверждаем установку,нажатием y.
[править] Редактирование конфигурационных файлов
В файл nano /etc/sysconfig/httpd
Добавляем строку или раскомментируем ее:
HTTPD=/usr/sbin/httpd.itk
В файл nano /etc/httpd/conf.d/php.conf добавляем строку:
<IfModule itk.c> LoadModule php5_module modules/libphp5.so </IfModule>
Если на сервере уже имеются домены, то исправляем для них SuexecUserGroup на AssignUserID командой:
sed -i -e 's/SuexecUserGroup/AssignUserID/g' /etc/httpd/conf/httpd.conf
или
perl -p -i -e 's/SuexecUserGroup/AssignUserID/g' /etc/httpd/conf/httpd.conf
а так же устанавливаем настройки для MPM-ITK, добавляя блок(в зависимости от технических характеристик сервера):
<IfModule itk.c> StartServers 1 MinSpareServers 1 MaxSpareServers 25 ServerLimit 25 MaxClients 25 MaxRequestsPerChild 4000 </IfModule>
в файл /etc/httpd/conf/httpd.conf
Перезапускаем HTTPD:
/etc/init.d/httpd restart
или
service httpd restart
[править] Проверка работы MPM-ITK
Для проверки того,что запущен именно MPM-ITK, выполним команду:
ps aux | grep httpd.itk
Вывод которой должен быть примерно следующим:
root 32185 0.0 1.3 23092 7312 ? Ss 05:40 0:00 /usr/sbin/httpd.itk root 32187 0.0 0.6 23092 3648 ? S 05:40 0:00 /usr/sbin/httpd.itk root 32189 0.0 0.1 5508 776 pts/0 S+ 05:40 0:00 grep httpd.itk
[править] Настройка ISPManager
В самом начале файла /usr/local/ispmgr/etc/ispmgr.conf добавляем строки:
Option ApacheMPM ApacheProcName httpd.itk
Это необходимо для корректной работы панели ISPManager с MPM-ITK, а так же для того,что бы при добавлении новых доменов средствами панели, в <VirtualHost> была указана строка AssignUserID.
Установка и настройка завершена. Убиваем процесс панели управления ISPManager, что бы при последующем запуске панель могла считать новые настройки:
killall -9 ispmgr
Успешной работы!
http://wiki.owlhost.net/wiki/%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_mpm-itk_%D0%BD%D0%B0_CentOS/ISPmanager
- Как узнать IP-адрес по MAC-адресу - 07.04.2023
- Пинг проходит, а страницы в браузере не открываются - 07.04.2023
- Что если сайт пингуется «извне», но не открывается из под «локалки»? - 07.04.2023