Назад | Перейти на главную страницу

Apache2 - Запуск Apache от имени учетной записи пользователя

Я только что получил свой собственный сервер Linux (Debian Stable) и установил Apache2, PHP5 и MySQL. Предполагается, что он будет использоваться для хостинга моего и других сайтов.

В настоящее время Apache работает как собственный пользователь. Это означает, что мне нужно передать все файлы и папки в корневом веб-каталоге пользователю Apache, иначе Apache не сможет их редактировать и / или удалять. Это большая проблема в Wordpress при установке плагинов и тому подобного.

Я немного погуглил и нашел веб-сайт, на котором говорится, что вам нужно запустить экземпляр Apache пользователя как его собственный пользователь, а не запускать Apache как собственный пользователь.

Как я могу это сделать?

По соображениям безопасности и совместимости это не такая уж хорошая идея.

Лучшей идеей может быть использование suexec, которое выполняет cgi каждого человека как они.

Если ты действительно хочешь это сделать

Добавить

User youruserid
Group yourgroupid

в ваш /etc/apache2/apache.conf

Если вы не знаете, где это находится в файле, или думаете, что это может быть другой файл, посканируйте строки User и Group. Возможно, уже есть настройка.


Вот некоторая документация, которая может вам понравиться

Директива пользователя http://httpd.apache.org/docs/2.0/mod/mpm_common.html#user

Общий apache2 http://httpd.apache.org/docs/2.0/

Я настоятельно не рекомендую запускать Apache от имени любого реального пользователя. Если на ваших сайтах обнаружен эксплойт, злоумышленник может прочитать или изменить ваши личные файлы.

WordPress будет нормально работать с файлами, принадлежащими вашей учетной записи, и с Apache, запущенным от имени другого пользователя. Есть несколько файлов и путей, которые вам следует chgrp в ту же группу, что и сервер Apache, и сделать группу доступной для записи. Таким образом, Apache может вносить необходимые изменения без риска для пользователя получить полный доступ к остальным вашим файлам.

Вы должны прочитать документ WordPress на Изменение прав доступа к файлу.

с apache2 у вас есть возможность использовать Мультипроцессорный модуль ITK. Это порождает новые процессы, запущенные под uid и gid конечного пользователя. Я использую это для большого эффекта в моем хостинге.

Должны быть пакеты для всех основных доступных дистрибутивов.

mpm-itk работает хорошо, его можно использовать также для виртуального хоста, отличного от php.

Если вам нужна лучшая масштабируемость и производительность, пулы fastcgi - лучший выбор.

Если вы хотите попробовать что-то новое, загляните на php-fpm http://php-fpm.org/, пакеты debian lenny доступны на http://www.dotdeb.org/.