Изменение 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 8888888888 88 88 888888888888
,d88 88 ,d88 ,d88 ,8P'
888888 88 ____ 888888 888888 d8"
88 88a8PPPP8b, 88 88 ,8P'
88 PP" `8b 88 88 d8"
88 d8 88 88 ,8P'
88 Y8a a8P 88 88 d8"
88 "Y88888P" 88 88 8P'

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