Last Update: 2009-02-14 (土) 00:07:01 (5791d)
FrontPage / BSD / portsでApacheのインストール

PortsでApache2.2をインストール

前提

Apache2.2+SuExec

Apacheに付属するSuExecを使用し、且つ、VirtualHostでもSuExecを使用したい。
デフォルトでは次のようになっており、SuExecが使用出来ない。

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

portsからインストールするときに、make config でおこなっても DOC_ROOTを選択することが出来ないため、次のようにしておこなう。

# cd /usr/ports/www/apache22
# make SUEXEC_DOCROOT=/home

それ以外のオプションについては、 Makefile.doc に記載があり次のようになっています。

WITH_SUEXEC:              Enable suExec support
      SUEXEC_DOCROOT:     SuExec root directory
      SUEXEC_USERDIR:     User subdirectory (default public_html)
      SUEXEC_SAFEPATH:    Set the safepath
      SUEXEC_LOGFILE:     Set log file for suexec (default: /var/log/httpd-suexec.log)
      SUEXEC_UIDMIN:      Minimal allowed UID (default 1000)
      SUEXEC_GIDMIN:      Minimal allowed GID (default 1000)
      SUEXEC_CALLER:      User allowed to call SuExec (default ${WWWOWN} (www))
      SUEXEC_UMASK:       Defines umask for suexec'd process(default:unset)

無事にインストールが完了すると、次のようになります。

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

うまく、動くのを確認したら、 /etc/make.conf に書いておきましょう。

# echo "SUEXEC_DOCROOT=/home" >> /etc/make.conf

実際に使いたいドメイン等のvirtual host 次のように記述することでSuExecが使用可能になります。

<VirtualHost *:80>
        ServerAdmin foo@example.com
        DocumentRoot /home/www/example.com/public_html
        ServerName example.com
        SuexecUserGroup foo bar

        DirectoryIndex index.html
        …
</VirtualHost>
TOPページへ戻るページの更新   ページの編集新しいページの作成新しい下位ページの作成そのページを引用して新規作成そのページにファイルの添付ページの削除ページ名の変更前回の編集内容の表示ページの凍結バックアップページの参照ページへのリンク元を表示   サイトのページ一覧サイト内単語検索編集したページの履歴削除したページの履歴   別ウィンドウでマニュアルページへ