KennyQi Blog

KennyQi(ケニーチー)のブログへようこそ
Web制作のメモや息抜きブログ。
ウェブ開発・デザイン・Nucleusのメモや旅日記などを綴っています
Apache VirtualHostでDocumentRoot does not exist でもあるのに。。
10/11 | Webシステム | Posted by: kennyqi
CentOS4
Apache 2.0.52

VirtualHostを設定して、
httpdを再起動すると下記のエラーが。。

DocumentRoot does not exist

VirtualHostでのDocumentRootは間違ってないし、
なんでだぁ???とかなり探しました。

ありますた。SELinux あんたが邪魔してたのね。。


たとえば、http.confを下記のように設定したとする

ServerName aaa.com
DocumentRoot /home/test/www



/home/test/www ディレクトリを作成して
普通はhttpdを再起動すればOKなんですけど、
Forbiddenとなってみれない。。

ここでよくあるミスが、testユーザを作ったときに
/home/testのパーミッションが700になってる場合。
これだとtestの中を見る許可がないのでForbiddenになる。
でも、今回はこれを755とか適切なパーミッションにしてるのにおきるForbidden。。

なんでだ~?と悩んだ末、辿り着いた答えが、SELinux。
SELinuxはセキュリティーポリシーを「タイプ」と呼ばれるラベルで管理してるので
それが適切でないとForbiddenとなってウェブからみることができません。

$ ls -lZ
をすると、ラベルがあることがわかります。
これがhttpで見れるラベルになってないと、Forbiddenになるようです。

私の場合、このラベルを変更してやってみたんですけど、
なんかうまく動かなかったので、結局SELinuxを無効にすることにしました。

SELinuxを無効にするには、rootで
# setenforce 0
とするとOK

SELinuxが有効か無効かを確認するには
# getenforce
とする。
Enforcing が出たら、有効。
Permissive が出たら、無効。

サーバー起動時にSELinuxが有効にならないようにするには
SELinuxの設定ファイルを編集します。
# vi /etc/sysconfig/selinux
SELINUX=enforcing

SELINUX=disabled
これで起動時にSELinuxが無効になります。
サーバをリブートしてみてください。


参考サイト Thanks!
http://www.selinux.gr.jp/documents/FC3-SELinuxmemo.html#2-1
http://home-mg.que.ne.jp/200801.html

Comments
No comments yet

Add Comment


Search


New Items
12/22, 2008
Postfix ハイフン始まりのメールアドレスが受信できないとき
More...
12/22, 2008
Linuxコマンドでマシンスペックを確認する方法
More...
11/15, 2008
SSDと7200rpmのHDDどっちが速い?
More...
10/18, 2008
PHPでUTF8の携帯サイト~Form入力値でAUだけ文字化け
More...
10/18, 2008
サーバ間でのファイル同期をrsyncとsshで実現
More...


New Comments
06/10 17:48:27
ああああ

ああああ>>
01/09 00:43:25
kennyqi

どうもありがとうございます。 写真はわけたほうがみやすい...>>
01/09 00:36:48
Motoo

早速旅行記おめでとうございます。 ただ、画像がおおきすぎ...>>
01/08 07:41:43
kennyqi

FuncyURLにしたため、テンプレートを変更しました。 Google/...>>
01/06 17:07:07
kennyqi

テストどうもありがとうございますw コメント投稿時のメ...>>


Archives
カテゴリ別記事リスト
12月, 2008
11月, 2008
10月, 2008
9月, 2008
5月, 2008
3月, 2008
2月, 2008
1月, 2008
12月, 2007


Memo
» MuKuLCast.comを聴く