Tipsカテゴリ
プログラムTips ※Tips一覧はこちら
 
■ apacheでシンボリックリンクが参照できない (2012/01/13)

CentOS 6でapache+phpのWebサイトを作成すると、デフォルト構成ならルートディレクトリは/var/www/htmlになります。

今回このルートディレクトリから/home/hogehoge以下のphpファイルへシンボリックリンクを張ったのですが、うまく参照されず403エラーになってしまいました。

/var/log/httpd/error_logを確認すると、「Symbolic link not allowed or link target not accessible」と記録されています。

それで、まずはhttpd.confを確認しました。CentOS 6の場合、/etc/httpd/conf/httpd.confにはデフォルトで下記の記述があり、シンボリックリンクを追うようになっています。

<Directory "/var/www/html">
   Options Indexes FollowSymLinks
   ・・・

http.confに問題がないので、今度はファイル/ディレクトリに対するアクセス権が正しくない可能性を疑いました。

ところがphpファイルのアクセス権限を緩くしても、phpファイルを含むフォルダのアクセス権限を緩めても、ファイルの所有者を変えても、403エラーから逃れられません・・・

結局、ユーザー用のルートディレクトリ(/home/hogehogeであればhogehogeディレクトリ)のアクセス権限がdrwx------になっていたのが原因でした。

下記のコマンドで無事に解決しました。

chmod 755 /home/hogehoge

こんなことに何時間もかかってしまった・・・

カテゴリ:サーバー設定

Google
 
在宅、SOHO、求人
 
Copyright(c) 2009 ISCS All rights reserved.