2

最初の適切な Rails プロジェクトをデプロイしようとしています。Nginx、Passenger、PostgreSQL がインストールされた Ubuntu 12.04 仮想サーバーがあります。Capistrano を使用してコードをサーバーにデプロイしました。

すべてが機能しているはずですが、ブラウザからページにアクセスしようとすると、何らかの理由で約 10 秒間接続を試みてからタイムアウトします。ただし、address/500.html や address/robots.txt などのすべての静的ページは正しく読み込まれます。

/opt/nginx/logs で Nginx エラー ログを確認しましたが、空です。一方、Nginx のアクセス ログには、私の試みの一部しか記録されていません。Nginx アクセス ログ:

130.233.194.3 - - [18/Sep/2012:11:13:04 +0300] "GET /somestuff HTTP/1.1" 301 5 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1"
130.233.194.3 - - [18/Sep/2012:11:37:59 +0300] "GET /500.html HTTP/1.1" 200 643
"-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1"
130.233.194.3 - - [18/Sep/2012:11:45:59 +0300] "-" 400 0 "-" "-"
130.233.194.3 - - [18/Sep/2012:11:57:32 +0300] "GET /500.html HTTP/1.1" 200 643
"-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1"
130.233.194.3 - - [18/Sep/2012:11:57:47 +0300] "GET /favicon.ico HTTP/1.1" 200 0 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1"
130.233.194.3 - - [18/Sep/2012:11:58:19 +0300] "GET /robots.txt HTTP/1.1" 200 204 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1"

(たとえば、/somestuff の直後に /nopage を試しましたが、ログに記録されません)

私の Rails アプリの運用ログには、データベースの移行のみが表示されます。Railsコンソールを本番モードで開いてデータベースに書き込むこともできるので、それは問題ではないと思います。

「app.get("/")」またはレール コンソールの他のページを記述した場合、301 のみが返されます (それが関連するかどうかはわかりません。私の開発環境では 200 が返されます)。

関連する可能性のある他のファイルを次に示します。

nginx.conf:

#user  [User used in deploying];
   server {
        listen 80;
        server_name [Name_of_the_server];
        root /home/[User used in deploying]/srv/nsbg/current/public;
        passenger_enabled on;
}

(それは私が追加したものです。それ以外の場合はデフォルトです)

Capistrano デプロイ ファイル:

require 'bundler/capistrano'
set :user, '[User used in deploying]'
set :domain, '[server name]'
set :applicationdir, "/home/[User used in deploying]/srv/nsbg"

set :scm, 'git'
set :repository,  "[Github repo]"
set :git_enable_submodules, 1 # if you have vendored rails
set :branch, 'master'
set :git_shallow_clone, 1
set :scm_verbose, true

# roles (servers)
role :web, domain
role :app, domain
role :db,  domain, :primary => true

# deploy config
set :deploy_to, applicationdir
set :deploy_via, :export

# additional settings
default_run_options[:pty] = true  # Forgo errors when deploying from windows
#ssh_options[:keys] = %w(/home/user/.ssh/id_rsa)            # If you are using ssh_keysset :chmod755, "app config db lib public vendor script script/* public/disp*"set :use_sudo, false

# Passenger
namespace :deploy do
  task :start do ; end
  task :stop do ; end
  task :restart, :roles => :app, :except => { :no_release => true } do
    run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}"
  end
end

コマンド「sudo Passenger-status」の使用:

----------- General information -----------
max      = 6
count    = 1
active   = 0
inactive = 1
Waiting on global queue: 0

----------- Application groups -----------
/home/[User used in deploying]/srv/nsbg/current:
  App root: /home/[User used in deploying]/srv/nsbg/current
  * PID: 8038    Sessions: 0    Processed: 1       Uptime: 1h 4m 29s

私が言ったように、静的ページは提供されますが、他のページ (無効なルートを含む) は単にハングアップし、エラーはどこにも書き込まれません。私を助けてください、私は展開に非常に不慣れで、完全に迷っています

4

0 に答える 0