Изменение AP_DOC_ROOT с /var/www на /home в suexec Apache 2, CentOS

По-умолчанию у suexec DOC_ROOT в CentOS (и других дистрибутивах) установлен /var/www, что не позволяет apache запускать скрипты с других мест (например, /home).

Единственный нормальный вариант сделать это в linux - перекомпилировать suexec с новыми настройками.
Команды приведены для Centos 6.0. В принципе инструкция подойдёт для других версий linux, с небольшими поправками.

Узнаём установленную версию Apache:

# httpd -v
Server version: Apache/2.2.15 (Unix)
Server built:   Feb 13 2012 22:31:42

Скачиваем и распаковываем исходники с http://archive.apache.org/dist/httpd/

# wget http://archive.apache.org/dist/httpd/httpd-2.2.15.tar.gz
# tar -xzf httpd-2.2.15.tar.gz

Смотрим настройки установленной версии suexec:

# /usr/sbin/suexec -V
 -D AP_DOC_ROOT="/var/www"
 -D AP_GID_MIN=100
 -D AP_HTTPD_USER="apache"
 -D AP_LOG_EXEC="/var/log/httpd/suexec.log"
 -D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
 -D AP_UID_MIN=500
 -D AP_USERDIR_SUFFIX="public_html"

Настраиваем (меняем AP_DOC_ROOT, остальные настройки те же):
# cd httpd-2.2.15
# ./configure --enable-suexec --with-suexec-caller=apache --with-suexec-userdir=public_html --with-suexec-docroot=/home --with-suexec-uidmin=500 --with-suexec-gidmin=100 --with-suexec-logfile=/var/log/httpd/suexec.log

и собираем suexec (не устанавливаем!)
# make

Смотрим права и владельца на установленную версию suexec:

# ls -l /usr/sbin/suexec
-r-s--x--- 1 root apache 14K Feb 14 02:33 /usr/sbin/suexec

Копируем новую версию, устанавливаем права:

# cp ./support/suexec /usr/sbin/suexec
# chown root:apache /usr/sbin/suexec
# chmod 4510 /usr/sbin/suexec

Проверяем права:

# ls -l /usr/sbin/suexec
-r-s--x--- 1 root apache 27K Apr 25 10:35 /usr/sbin/suexec

Проверяем новые настройки suexec:

# /usr/sbin/suexec -V
 -D AP_DOC_ROOT="/home"
 -D AP_GID_MIN=100
 -D AP_HTTPD_USER="apache"
 -D AP_LOG_EXEC="/var/log/httpd/suexec.log"
 -D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
 -D AP_UID_MIN=500
 -D AP_USERDIR_SUFFIX="public_html"

Видно, что все настройки остались старые, изменился только DOC_ROOT.

Перезагружаем httpd для загрузки нового suexec.

Всё.


Оставить комментарий

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

Подробнее о форматировании

КАПЧА
А ты не робот? Введи 5 цифр
                                                                       
888888888888 ad8888ba, ad88888ba ad88888ba ad88888ba
,8P' 8P' "Y8 d8" "8b d8" "8b d8" "88
d8" d8 Y8a a8P Y8a a8P 8P 88
,8P' 88,dd888bb, "Y8aaa8P" "Y8aaa8P" Y8, ,d88
d8" 88P' `8b ,d8"""8b, ,d8"""8b, "PPPPPP"88
,8P' 88 d8 d8" "8b d8" "8b 8P
d8" 88a a8P Y8a a8P Y8a a8P 8b, a8P
8P' "Y88888P" "Y88888P" "Y88888P" `"Y8888P'

Enter the code depicted in ASCII art style.
To prevent automated spam submissions leave this field empty.