Собственно необходимость установить модуль 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, что будет говорить о том, установлен ли данный модуль, или нет. Для этого используйте команду:
[code]stat /usr/sbin/httpd.itk[/code]
Если файл имеется, можно переходить к настройке веб-сервера apache. Но если даже файл имеется, ничего не будет, если вы попробуете еще раз установить этот модуль — вдруг имеется более новая версия.
Подключаем репозиторий EPEL для установки модуля Apache MPM-ITK
Для этого подключаем репозиторий EPEL. Для операционной системы CentOS 6.5 x64 она будет выглядеть следующим образом:
[code]rpm -ihv http://mirror.yandex.ru/epel/6/x86_64/epel-release-6-8.noarch.rpm[/code]
Чтобы не раздувать статью, скажу что делать, если у вас другая версия операционной системы или используется другая архитектура: лезете по адресу
[code]http://mirror.yandex.ru/epel/[/code]
Далее выбираете версию ОС CentOS(например для 6.х версий заходим в папку 6). Далее выбираете папку с подходящей архитектурой операционной системы(x32 или x64). Далее в алфавитном порядке ищете файл в названии которого должно быть epel_release или что-то подобное. Получаете полные адрес данного файла и соответственно изменяете вышеуказанную команду.
Устанавливаем MPM-ITK
Выполняем команду
[code]yum install httpd-itk[/code]
и дожидаемся полной установки модуля Apache MPM-ITK. Возможно выйдет сообщение, что модуль уже установлен и версия последняя.
Настройка файлов конфигурации Apache
Необходимо в файл /etc/sysconfig/httpd добавить строчку
[code]HTTPD=/usr/sbin/httpd.itk[/code]
Если будет подобная строчка, закомментируйте ее с помощью знака #.
В файл /etc/httpd/conf.d/php.conf добавьте следующую строчку:
[code]<IfModule itk.c>
LoadModule php5_module modules/libphp5.so
</IfModule>[/code]
Выполните одну из команд:
[code]perl -p -i -e ‘s/SuexecUserGroup/AssignUserID/g’ /etc/httpd/conf/httpd.conf[/code]
или
[code]sed -i -e ‘s/SuexecUserGroup/AssignUserID/g’ /etc/httpd/conf/httpd.conf[/code]
Далее в файл /etc/httpd/conf/httpd.conf необходимо добавить следующие строчки:
[code]# MPM-ITK
<IfModule itk.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 4000
</IfModule>[/code]
В том же файле найдите подобную запись, которая начинается с <IfModule prefork.c> и подправьте приведенные здесь значения по аналогии с модулем prefork. Ну и на досуге почитайте про адекватную настройку этих параметров.
Перезапускаем веб-сервер Apache с модулем MPM-ITK
Выполните команду:
[code]service httpd restart[/code]
После перезапуска выполните команду:
[code]ps ax|grep htt[/code]
Если в ее выводе вы увидите процессы с именами /usr/sbin/httpd.itk, то все выполнено правильно.
WordPress по-прежнему просит доступ к FTP?
Возможно даже после этих действий WordPress будет жаловаться на то, что у него до сих пор нет доступа к файлам. Это может быть объяснено тем, что вы уже до этих действий залили на сервер файлы сайта. Теперь вам надо только обновить права доступа к этим файлам. Для этого вам нужно выполнить команду вида:
[code]chown -R admin:admin /home/admin[/code]
Лично у меня при выполнение сервер ругался, мол нельзя давать такие разрешения на папку /home/admin/conf, где хранятся файлы конфигурации. В таком случае вам нужно более детализировать местоположение файлов вашего сайта:
[code]chown -R admin:admin /home/admin/web[/code]
Разумеется тут могут различаться имя пользователя и группа, в которую он входит, а так же сам путь до файлов вашего(их) сайтов.
Панель управления сайтом тоже должна быть вкурсе
Если и после вышеописанных действий WordPress настойчиво просит доступ к FTP, необходимо копать в сторону панели управления сайтом. В случае с ISPManager необходимо в файл /usr/local/ispmgr/etc/ispmgr.conf добавить следующие строчки:
[code]Option ApacheMPM
ApacheProcName httpd.itk[/code]
после чего перезапустить панель управления сервером. Действия для других панелей могут отличаться. Например для панели VestaCP вообще не понадобились дополнительные действия.
Вот таким образом решает вопрос с доступом WordPress к FTP и собственно установка модуля Apache MPM-ITK на операционной системе CentOS.




















