Главная » Создание сайта, раскрутка сайта

Установка Apache MPM-ITK на CentOS

Собственно необходимость установить модуль MPM-ITK для Apache появилась в связи с тем, что WordPress запрашивает FTP доступ на VPS/VDS хостинге. Это проявляется как во время обновлении плагинов, так в том, что некоторые плагины не могут внести изменения в файлы, например в файл .htaccess, в том что в редакторе WordPress нет кнопки Сохранить, а так же в том, что вы не можете загрузить изображения через админку WordPress. Все это объясняется тем, что WordPress, работающий под учеткой определенного пользователя, не имеет доступа к директории сайта. Для решения проблемы с тем, что Wordpess просит ftp-доступ, необходимо изменить механизм работы Apache, которая после установки модуля mpm-itk будет обращаться к файлам и папкам от имени владельца.

Устанавливаем модуль Apache MPM-ITK на VPS/VDS сервере с ОС CentOS

Для всех нижеописанных действий вам необходимо подключиться к консоли CentOS и первым делом проверить, имеется ли файл httpd.itk, что будет говорить о том, установлен ли данный модуль, или нет. Для этого используйте команду:

stat /usr/sbin/httpd.itk

Если файл имеется, можно переходить к настройке веб-сервера apache. Но если даже файл имеется, ничего не будет, если вы попробуете еще раз установить этот модуль — вдруг имеется более новая версия.

Подключаем репозиторий EPEL для установки модуля Apache MPM-ITK

Для этого подключаем репозиторий EPEL. Для операционной системы CentOS 6.5 x64 она будет выглядеть следующим образом:

rpm -ihv http://mirror.yandex.ru/epel/6/x86_64/epel-release-6-8.noarch.rpm

Чтобы не раздувать статью, скажу что делать, если у вас другая версия операционной системы или используется другая архитектура: лезете по адресу

http://mirror.yandex.ru/epel/

Далее выбираете версию ОС CentOS(например для 6.х версий заходим в папку 6). Далее выбираете папку с подходящей архитектурой операционной системы(x32 или x64). Далее в алфавитном порядке ищете файл в названии которого должно быть epel_release или что-то подобное. Получаете полные адрес данного файла и соответственно изменяете вышеуказанную команду.

Устанавливаем MPM-ITK

Выполняем команду

yum install httpd-itk

и дожидаемся полной установки модуля Apache MPM-ITK. Возможно выйдет сообщение, что модуль уже установлен и версия последняя.

Настройка файлов конфигурации Apache

Необходимо в файл  /etc/sysconfig/httpd добавить строчку

HTTPD=/usr/sbin/httpd.itk

Если будет подобная строчка, закомментируйте ее с помощью знака #.

В файл /etc/httpd/conf.d/php.conf добавьте следующую строчку:

<IfModule itk.c>
  LoadModule php5_module modules/libphp5.so
</IfModule>

Выполните одну из команд:

perl -p -i -e 's/SuexecUserGroup/AssignUserID/g' /etc/httpd/conf/httpd.conf

или

sed -i -e 's/SuexecUserGroup/AssignUserID/g' /etc/httpd/conf/httpd.conf

Далее в файл /etc/httpd/conf/httpd.conf необходимо добавить следующие строчки:

# MPM-ITK
<IfModule itk.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>

В том же файле найдите подобную запись, которая начинается с <IfModule prefork.c>  и подправьте приведенные здесь значения по аналогии с модулем prefork. Ну и на досуге почитайте про адекватную настройку этих параметров.

Перезапускаем веб-сервер Apache с модулем MPM-ITK

Выполните команду:

service httpd restart

После перезапуска выполните команду:

ps ax|grep htt

Если в ее выводе вы увидите процессы с именами /usr/sbin/httpd.itk, то все выполнено правильно.

WordPress по-прежнему просит доступ к FTP?

Возможно даже после этих действий WordPress будет жаловаться на то, что у него до сих пор нет доступа к файлам. Это может быть объяснено тем, что вы уже до этих действий залили на сервер файлы сайта. Теперь вам надо только обновить права доступа к этим файлам. Для этого вам нужно выполнить команду вида:

chown -R admin:admin /home/admin

Лично у меня при выполнение сервер ругался, мол нельзя давать такие разрешения на папку /home/admin/conf, где хранятся файлы конфигурации. В таком случае вам нужно более детализировать местоположение файлов вашего сайта:

chown -R admin:admin /home/admin/web

Разумеется тут могут различаться имя пользователя и группа, в которую он входит, а так же сам путь до файлов вашего(их) сайтов.

Панель управления сайтом тоже должна быть вкурсе

Если и после вышеописанных действий WordPress настойчиво просит доступ к FTP, необходимо копать в сторону панели управления сайтом. В случае с ISPManager необходимо в файл /usr/local/ispmgr/etc/ispmgr.conf добавить следующие строчки:

Option ApacheMPM
ApacheProcName httpd.itk

после чего перезапустить панель управления сервером. Действия для других панелей могут отличаться. Например для панели VestaCP вообще не понадобились дополнительные действия.

Вот таким образом решает вопрос с доступом WordPress к FTP и собственно установка модуля Apache MPM-ITK на операционной системе CentOS.

Добавить комментарий

Ваш комментарий появится после модерации.