Nginxが読み込むindex.htmlを、Nginx実行ユーザのhomeディレクトリ配下に置いた場合、”403 Forbidden”が発生してハマった。
/var/log/nginx/error.log
1 2 3 |
[error] 12762#12762: *7 “/home/nginxuser/WebApplication3.com/index.html” is forbidden (13: Permission denied), client: 127.0.0.1, server: localhost, request: “GET / HTTP/1.1”, host: “localhost” |
バージョン
OS:CentOS Linux release 7.6.1810 (Core)
Nginx:nginx.x86_64 1:1.17.2-1.el7.ngx
chown/chmodで権限を調整しても、SELinuxをdisableにしても解消せず、
/varフォルダ配下に、index.htmlを配置することで解消しました。
1. Permission deniedにならないPathと設定。
Path
1 2 3 |
/var/www/WebApplication3.com/index.html |
/etc/nginx/conf.d/default.conf
1 2 3 4 5 6 7 |
location / { root /var/www/WebApplication3.com; index index.html index.htm; allow all; } |
2. Permission deniedになるPathと設定。
Path
1 2 3 |
/home/nginxuser/WebApplication3.com/index.html |
/etc/nginx/conf.d/default.conf
1 2 3 4 5 6 7 |
location / { root /home/nginxuser/WebApplication3.com; index index.html index.htm; allow all; } |
参考
CentOS 7へのnginxのインストール。最短でバーチャルホストまでを利用する
Nginxで403 Forbiddenが表示された時のチェックポイント5選
コメント