私はFedora 29サーバーを使用しています。 SELinuxが実行モードになっています。 Nginxにルートディレクトリの下のサブディレクトリにドキュメントを提供させるのに問題があります。権限を確認するときに表示される内容と比較してNginxログエントリが正しくないため、さらに問題を解決する方法を知る必要があります。
http://172.16.2.1/
たとえばindex.html
、サブディレクトリのドキュメントにアクセスすると403http://172.16.2.1/ftc-data/
エラーが発生します。error.log
示す:
2019/03/27 08:45:24 [error] 18589#0: *5 directory index of "/var/www/html/ftc-data/"
is forbidden, client: 172.16.4.8, server: _, request: "GET /ftc-data/ HTTP/1.1",
host: "172.16.2.1"
権限の面では/var/www/html
問題がないと思います。
# ls -Al
total 64
...
-rw-r-----. 1 root nginx 7822 Mar 27 08:09 index.html
lrwxrwxrwx. 1 root nginx 22 Mar 27 07:57 ftc-data -> /var/ftc/ftc-data
...
Re /var/www/html
:
# ls -Al ftc-data/
total 98192
-rw-r-----. 1 root nginx 1411314 Mar 26 06:47 2019-01-28.csv
-rw-r-----. 1 root nginx 3105895 Mar 26 06:47 2019-01-29.csv
-rw-r-----. 1 root nginx 2782858 Mar 26 06:47 2019-01-30.csv
...
そして:
# ls -Al /var/ftc/
total 4
drwxr-x---. 2 root nginx 4096 Mar 27 07:16 ftc-data
symlinks off
存在しませんnginx.conf
。サーバーが再起動されましたsystemctl restart nginx
。また、SELinuxタグを実行しrestorecon -r /var/www/
て修正しました。restorecon -r /var/ftc/
次に、どこで検索するのかわかりません。0777
Stack Overflowの開発者の間で人気があるにもかかわらず、これは受け入れられる答えではありません。
権限の問題をさらに解決するにはどうすればよいですか?
重要な場合は、ファイルをインポートしようとすると、次のようなhttp://172.16.2.1/ftc-data/2019-01-28.csv
結果になります。
2019/03/27 09:02:39 [error] 18589#0: *13 open() "/var/www/html/ftc-data/2019-01-28.csv"
failed (13: Permission denied), client: 172.16.4.8, server: _, request: "GET /ftc-data/2019-01-28.csv HTTP/1.1",
host: "172.16.2.1"
そして:
# namei -l /var/ftc/
f: /var/ftc/
dr-xr-xr-x root root /
drwxr-xr-x root root var
drwxr-xr-x root nginx ftc
# namei -l /var/www/
f: /var/www/
dr-xr-xr-x root root /
drwxr-xr-x root root var
drwxr-x--- root nginx www
権限の問題がないと確信しています。間違ったこともあります。
ベストアンサー1
言及したように、これはSELinux構成に関連している可能性が高いです。提案通りこれ答え、問題を解決するには、次のコマンドを実行します。
chcon -R -t httpd_sys_content_t /var/ftc/
# ls -Zd /var/www/html/ /var/ftc/
unconfined_u:object_r:var_t:s0 /var/ftc/
unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/
# chcon -R -t httpd_sys_content_t /var/ftc/
# ls -Zd /var/www/html/ /var/ftc/
unconfined_u:object_r:httpd_sys_content_t:s0 /var/ftc/
unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/