php
http { server { listen 8001 default; server_name localhost; root /var/www/ruby; location /var/www/ruby { autoindex on; if (!-e $request_filename) { rewrite ^/(.+)# /index.php?q=$1 last; break; } } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME /var/www/wordpress$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_script_name; include fastcgi_params; } } include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip on; }
上記nginx.confです。(便宜上PHPとしています。)rootのディレクトリのパーミッションは755になっているのですが、ブラウザ上で403 Forbidden
nginx/1.8.0と表示されてしまいます。
パーミッション以外の設定を見直す必要があるのでしょうか?
追記:
回答ありがとうございます。
下記confでも同一状態になるので、locationディレクティブが原因ではないようです。
PHP
user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { server { listen 8001; server_name localhost; root /var/www/ruby; } include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip on; }
/var/log/nginx/error.log ↓
PHP
2015/12/09 19:36:12 [error] 9643#0: *1 directory index of "/var/www/ruby/" is forbidden, client: 127.0.0.1, server: localhost, request: "GET / HTTP/1.1", host: "localhost:8001"
まだ回答がついていません
会員登録して回答してみよう