前提・実現したいこと
先日railsで作成したチャットアプリをawsにてデプロイしました。
ですが、いざブラウザで開いてみるとcssの未反映と、ルーティングエラーが起きてしまいます、、、
自動デプロイのCapistranoを導入しているのですが、エラー文をみるとCapistranoで生成されたフォルダがreleaseフォルダ、currentフォルダが悪さをしているのは分かったのですが、検索の仕方が悪いのか修正の仕方がわからない状態です、、、
発生している問題・エラーメッセージ
本番環境でもエラー文が出力されるようにしているのですが、ホーム画面からゲストログインしようとすると以下のエラー文が出力されます。
他の画面移動(リクエスト)ではエラーは発生しないです、、、
上から3行目の
Rails.root: /var/www/tentyo-chat/releases/20200827071538
ここで本来Capstranoを使用している場合、「/var/www/アプリ名/current」を参照しなければならないと思うのですが、なぜがreleasesフォルダを参照しているので、ここが問題点かなと自分では考えております。
ここは問題ないだろうと検討がつきました!!
unicorn.rb↓
unicorn.rb
1#サーバ上でのアプリケーションコードが設置されているディレクトリを変数に入れておく 2app_path = File.expand_path('../../../', __FILE__) 3 4#アプリケーションサーバの性能を決定する 5worker_processes 1 6 7#アプリケーションの設置されているディレクトリを指定 8working_directory "#{app_path}/current" 9 10#Unicornの起動に必要なファイルの設置場所を指定 11pid "#{app_path}/shared/tmp/pids/unicorn.pid" 12 13#ポート番号を指定 14listen "#{app_path}/shared/tmp/sockets/unicorn.sock" 15 16#エラーのログを記録するファイルを指定 17stderr_path "#{app_path}/shared/log/unicorn.stderr.log" 18 19#通常のログを記録するファイルを指定 20stdout_path "#{app_path}/shared/log/unicorn.stdout.log" 21 22#Railsアプリケーションの応答を待つ上限時間を設定 23timeout 60 24 25 26 27preload_app true 28GC.respond_to?(:copy_on_write_friendly=) && GC.copy_on_write_friendly = true 29 30check_client_connection false 31 32run_once = true 33 34before_fork do |server, worker| 35 defined?(ActiveRecord::Base) && 36 ActiveRecord::Base.connection.disconnect! 37 38 if run_once 39 run_once = false # prevent from firing again 40 end 41 42 old_pid = "#{server.config[:pid]}.oldbin" 43 if File.exist?(old_pid) && server.pid != old_pid 44 begin 45 sig = (worker.nr + 1) >= server.worker_processes ? :QUIT : :TTOU 46 Process.kill(sig, File.read(old_pid).to_i) 47 rescue Errno::ENOENT, Errno::ESRCH => e 48 logger.error e 49 end 50 end 51end 52 53after_fork do |_server, _worker| 54 defined?(ActiveRecord::Base) && ActiveRecord::Base.establish_connection 55end
routes.rb↓
Rails.application.routes.draw do devise_for :users, controllers: { registrations: 'users/registrations', sessions: 'users/sessions' } devise_scope :user do get "sign_in", to: "users/sessions#new" get "sign_out", to: "users/sessions#destroy" post 'users/guest_sign_in', to: 'users/sessions#new_guest' end root 'groups#index' resources :groups do member do get :join end resources :messages end end
お忙しいとは思いますが、ご教授いただけると幸いですm(__)m
回答2件
あなたの回答
tips
プレビュー