私のサーバーには2つのPDFファイルがあります。
-rwxr-xr-x. 1 apache apache 1422861 Sep 11 2014 file1.pdf
-rwxr-xr-x. 1 apache apache 340815 Aug 27 13:06 file2.pdf
最初の項目にアクセスできます。www.myserver.com/pdffiles/file1.pdf
2番目のファイルをアップロードし、権限の問題がないようにapache:apacheとrwxr-xr-xの権限を変更しましたが、次のように2番目のファイルにアクセスしようとすると、www.myserver.com/pdffiles/file2.pdfわかりました:
禁止する
このサーバーの/pdffiles/file2.pdfにアクセスする権限がありません。
私は何を見逃していますか?
私のssl_error_logには次のものがあります。
[Thu Aug 27 13:30:46.755295 2015] [core:error] [pid 3025] (13) 権限が拒否されました: [client xxxx:60230] AH00132: ファイル権限がサーバーアクセスを拒否します: /var/www/ myserver/file2。
答え1
SELinuxに問題があるかどうかはわかりませんでしたが、SELinuxをオフにしてsetenforce 0
動作していたので、それが問題であることがわかりました。ファイルを一覧表示するとこんな感じです。ls -alZ
-rwxr-xr-x. apache apache unconfined_u:object_r:httpd_sys_rw_content_t:s0 file1.pdf
-rwxr-xr-x. apache apache unconfined_u:object_r:user_home_t:s0 file2.pdf
だから私はそれを次のように修正しました:
chcon unconfined_u:object_r:httpd_sys_rw_content_t:s0 file2.pdf
また、SELinuxの電源を入れましたsetenforce 1
。