rails + nginx + unicorn で開発環境を構築しています。
現状のステータス
- nginxを起動してhttp://mydomainでrailsにアクセスると403 forbiddenが返ってくる
- unicornの起動設定は行い、プロセスコマンドでもunicornの起動を確認済み
- ドキュメントルートは/path/to/myappに合わせている。
以下nginxの設定
dfault.conf
1 2upstream unicorn { 3 server unix:/tmp/unicorn.sock; 4} 5 6server { 7 listen 80; 8 server_name localhost; 9 10 #charset koi8-r; 11 access_log /var/log/nginx/access.log main; 12 error_log /var/log/nginx/error.log; 13 root /path/to/myapp/public; 14 15 location / { 16 #root /path/to/myapp/public; 17 } 18 client_max_body_size 64m; 19 error_page 404 /404.html; 20 error_page 500 502 503 504 /500.html; 21 try_files $uri/index.html $uri @unicorn; 22 23 location @unicorn { 24 proxy_set_header X-Real-IP $remote_addr; 25 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 26 proxy_set_header Host $http_host; 27 proxy_pass http://unicorn; 28 } 29
上記の状態でnginxを起動させた場合に / にアクセスすると403が帰ってきます。
行った対処
簡単にぐぐってみて調べた範囲では
- publicのpermissionを777に変更
- bundle exec rake assets:precompile を実行
しましたが上手くいかず。
nginxのログにはそもそも
error.log
1 22016/09/28 19:29:28 [error] 8268#8268: *1 directory index of "/path/to/myapp/public/" is forbidden, client: 192.168.33.1, server: localhost, request: "GET / HTTP/1.1", host: "192.168.33.10" 3
と返ってきている。
環境
CentOS7
Vagrant 1.8
Rails 4.4
Ruby 2.3
nginx 1.10
rails server でrailsのサーバーを起動させた際は正常に動作しているので、nginx + unicornでrailsを動作させるときに403になる理由と対処を教えていただきたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/29 18:11