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

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