Как прикрутить MPM-ITK к WHM/cPanel

Я не буду писать о том, что это такое и зачем это надо. Раз вы зашли сюда, то привело наверное не праздное любопытство, а вполне конкретный вопрос — как прикрутить этот itk к cpanel.

Сначала вам нужно будет собрать php в режиме dso (mod_php) со всеми опциями и настройками, которые вы посчитаете нужными.

Затем сохраните копию mod_php, так как при сборке в MPM-ITK easyapache не делает dso для php:
cp /usr/local/apache/modules/libphp5.so /root
И сделайте исполняемый скрипт для восстановления /scripts/posteasyapache:
cp /root/libphp5.so /usr/local/apache/modules/
/etc/init.d/httpd restart
/usr/local/cpanel/bin/rebuild_phpconf 5 none dso enabled

Скачайте и распакуйте модуль для easyapache:
cd /root
wget http://docs.cpanel.net/twiki/pub/EasyApache3/CustomMods/MPMitk.tar.gz
tar -C /var/cpanel/easy/apache/custom_opt_mods -xzf MPMitk.tar.gz

После чего можно через easyapache или WHM выбрать опцию MPM-ITK.

Однако следует учесть, что это расширение просто добавляет режим работы apache без настроек, что совершенно теряет какой-то смысл. Для исправления этого надо создать еще один исполняемый скрипт /scripts/postwwwacctuser:
system("chmod -R 700 /home/$username/public_html");
system("mkdir -p /usr/local/apache/conf/userdata/std/2/$username");
system("echo \"AssignUserID $username $username\" >> /usr/local/apache/conf/userdata/std/2/$username/mpm.conf");
system("echo \"MaxClientsVHost 25\" >> /usr/local/apache/conf/userdata/std/2/$username/mpm.conf");
system("/scripts/ensure_vhost_includes --user=$username");

Этот скрипт будет выставлять правильные права на директорию с сайтом (только на чтение владельцу), включат работу apache от логина и ставит максимальное число одновременных коннектов в 25. Разумеется, что потом это значение всегда можно менять и при этом индивидуально для каждого.