Изменение 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 цифр
                                                                        
ad888888b, ,d8 ad8888ba, ad88888ba ad8888ba,
d8" "88 ,d888 8P' "Y8 d8" "88 8P' "Y8
a8P ,d8" 88 d8 8P 88 d8
,d8P" ,d8" 88 88,dd888bb, Y8, ,d88 88,dd888bb,
a8P" ,d8" 88 88P' `8b "PPPPPP"88 88P' `8b
a8P' 8888888888888 88 d8 8P 88 d8
d8" 88 88a a8P 8b, a8P 88a a8P
88888888888 88 "Y88888P" `"Y8888P' "Y88888P"

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