CentOS4.x CentOS5.x CentOS6.x Apache2

apache2のドキュメントルートの変更を行います

SELinux有効状態では、普通にディレクトリを変更するたけではうまくいきません

変更する内容

CentOSのapache2のデフォルト設定ではドキュメントルートやcgi-binの位置は以下の様になっています

/var/www/
      +--cgi-bin/
      +--error/
      +--html/
      +--icons/

これを

/home/www/
       +--cgi-bin/
       +--error/
       +--html/
       +--icons/

の様に、/home/www以下にごっそり移動させようと思います

apache2設定ファイルの変更

/etc/httpd/conf/httpd.confに対して変更を行います

以下、変更した場所だけ示します。

  :             :
DocumentRoot "/home/www/html"
  :             :
<Directory "/home/www/html">
  :             :
Alias /icons/ "/home/www/icons/"
  :             :
<Directory "/home/www/icons">
  :             :
ScriptAlias /cgi-bin/ "/home/www/cgi-bin/"
  :             :
<Directory "/home/www/cgi-bin">
  :             :
Alias /error/ "/home/www/error/"
  :             :
<Directory "/home/www/error">
  :             :

apache2を再起動してみる

rootにて、以下を実行してapache2を再起動してみます

# /etc/rc.d/init.d/httpd restart
  httpd を停止中:                                            [  OK  ]
  httpd を起動中:                                            [失敗]

しかし、エラーとなります。

試しに、SELinuxの動作モードをPermissiveモード(パーミッションのチェックはするが実際にアクセスの拒否はしない)にして、再度apache2を起動してみます。

※SELinuxの動作モードを変更する方法がわからない場合は、「SELinuxの現在の動作モードを確認/変更する」の記事を参照して下さい

# /etc/rc.d/init.d/httpd start
  httpd を起動中:                                            [  OK  ]

どうやらSELinuxが原因でapacheの起動に失敗している様です

このエラーを取り除くべく、次のページで設定を変更してみましょう

目次

  • Page.1
    • 変更する内容
    • apache2設定ファイルの変更
    • apache2設定ファイルの変更
    • apache2を再起動してみる - エラー発生
  • Page.2
    • 新しいドキュメントルートにSELinuxのラベルをつける
    • 再びapache2を起動してみる - 成功

関連ページ