1

最近、Rails アプリをサブ uri にデプロイする目的で、Phusion Passenger を使用して Nginx をセットアップしました。Rails アプリは必要に応じてデプロイされますが、projectvisionapps.com に移動すると、nginx によって projectvisionapps.com/index.html/ にルーティングされ、404 がスローされることに気付きました。projectvisionapps.com/index.html を手動で入力すると、 、nginx は正しいページを提供します。

手がかりや提案はありますか?

nginx エラー ログを確認すると、次のように表示されます。

2012/10/06 19:23:05 [error] 20782#0: *21 "/var/www/vhosts/projectvisionapps.com/httpdocs/index.html/index.html" is not found (20: Not a directory), client: 50.1.57.140, server: , request: "GET /index.html/ HTTP/1.1", host: "www.projectvisionapps.com"

私のnginx.confは次のとおりです:

#user  nobody;
worker_processes  1;

error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
worker_connections  1024;
}


http {
index index.html;

passenger_root /home/samudzi/.rvm/gems/ruby-1.9.3-p194@global/gems/passenger-3.0.17;
passenger_ruby /home/samudzi/.rvm/wrappers/ruby-1.9.3-p194/ruby;

include       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  logs/access.log;

sendfile        on;
#tcp_nopush     on;

#keepalive_timeout  0;
keepalive_timeout  65;

gzip  on;

include /opt/nginx/conf/conf.d/*.conf;


}

含まれている .conf ファイルは次のとおりです。

server {
listen 74.208.46.76:80;
server_name projectvisionapps.com;
#root /var/www/vhosts/projectvisionapps.com/httpdocs;

#try_files $uri.html $uri $uri/ @notfound;

location / {
  index index.html;
  root /var/www/vhosts/projectvisionapps.com/httpdocs;
  try_files $uri $uri/ /index.html;
}
}

Railsアプリの場合(これは完全に機能します)

server {
listen 74.208.46.76:80;
#server_name projectvisionapps.com;
root /var/www/vhosts/projectvisionapps.com/httpdocs;
passenger_enabled on;
passenger_base_uri /dev;
rails_spawn_method smart;
rails_env development;
gzip on;
}

提案やアドバイスをありがとう!

4

0 に答える 0