php
1http { 2 server { 3 listen 8001 default; 4 server_name localhost; 5 root /var/www/ruby; 6 7 location /var/www/ruby { 8 autoindex on; 9 if (!-e $request_filename) { 10 rewrite ^/(.+)# /index.php?q=$1 last; 11 break; 12 } 13 } 14 location ~ \.php$ { 15 fastcgi_pass 127.0.0.1:9000; 16 fastcgi_param SCRIPT_FILENAME /var/www/wordpress$fastcgi_script_name; 17 fastcgi_param PATH_INFO $fastcgi_script_name; 18 include fastcgi_params; 19 } 20 } 21 22 23 include /etc/nginx/mime.types; 24 default_type application/octet-stream; 25 26 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 27 '$status $body_bytes_sent "$http_referer" ' 28 '"$http_user_agent" "$http_x_forwarded_for"'; 29 access_log /var/log/nginx/access.log main; 30 sendfile on; 31#tcp_nopush on; 32 keepalive_timeout 65; 33 34#gzip on; 35} 36
上記nginx.confです。(便宜上PHPとしています。)rootのディレクトリのパーミッションは755になっているのですが、ブラウザ上で403 Forbidden
nginx/1.8.0と表示されてしまいます。
パーミッション以外の設定を見直す必要があるのでしょうか?
追記:
回答ありがとうございます。
下記confでも同一状態になるので、locationディレクティブが原因ではないようです。
PHP
1user nginx; 2worker_processes 1; 3 4error_log /var/log/nginx/error.log warn; 5pid /var/run/nginx.pid; 6 7 8events { 9 worker_connections 1024; 10} 11 12 13http { 14 server { 15 listen 8001; 16 server_name localhost; 17 root /var/www/ruby; 18 } 19 20 21 include /etc/nginx/mime.types; 22 default_type application/octet-stream; 23 24 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 25 '$status $body_bytes_sent "$http_referer" ' 26 '"$http_user_agent" "$http_x_forwarded_for"'; 27 access_log /var/log/nginx/access.log main; 28 sendfile on; 29#tcp_nopush on; 30 keepalive_timeout 65; 31 32#gzip on; 33} 34
/var/log/nginx/error.log ↓
PHP
12015/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" 2
回答2件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2015/12/09 10:45
2015/12/09 12:21