質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

解決済

1回答

983閲覧

rails server --environment productionのときに406になり画面が真っ白になる.

yu-imu

総合スコア35

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

0クリップ

投稿2018/09/10 12:47

編集2018/09/10 13:11

前提・実現したいこと

SPAサイトをherokuでデプロイするためにまずproduction環境でrailsを動かせるようにしたいです。

ruby on rails 5.2とReact.jsでSPAのサイトを作っております。
development環境では、問題なくロードされますが、productionに変えた瞬間serverが上手く立ち上がらず困っております。

発生している問題・エラーメッセージ

エラーメッセージ // ブラウザのconsole.log Refused to execute script from 'http://localhost:3000/packs/hello_react-365aa7d8b73cbd43e050.js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled Failed to load resource: the server responded with a status of 406 (Not Acceptable) // production.logの一部落ちてそうなところを抜粋 I, [2018-09-10T21:37:31.593482 #49900] INFO -- : [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] Started GET "/packs/application -aa194ef499aed15b2233beb202585763.css" for 127.0.0.1 at 2018-09-10 21:37:31 +0900 I, [2018-09-10T21:37:31.595810 #49900] INFO -- : [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] Processing by HomeController#in dex as CSS I, [2018-09-10T21:37:31.595950 #49900] INFO -- : [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] Parameters: {"path"=>"packs/a pplication-aa194ef499aed15b2233beb202585763"} I, [2018-09-10T21:37:31.596816 #49900] INFO -- : [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] Completed 406 Not Acceptable in 1ms F, [2018-09-10T21:37:31.598615 #49900] FATAL -- : [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] F, [2018-09-10T21:37:31.598737 #49900] FATAL -- : [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] ActionController::UnknownFormat (HomeController#index is missing a template for this request format and variant. request.formats: ["text/css"] request.variant: []): F, [2018-09-10T21:37:31.598795 #49900] FATAL -- : [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] F, [2018-09-10T21:37:31.598896 #49900] FATAL -- : [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] vendor/bundle/ruby/2.5.0/gems/a ctionpack-5.2.0/lib/action_controller/metal/implicit_render.rb:42:in `default_render' [57eb0446-cc5b-451a-986b-9a5ab97cdd7d] vendor/bundle/ruby/2.5.0/gems/actionpack-5.2.0/l

該当のソースコード

// サーバー立ち上げ画面がこれ以上読み込まれません。 rails server --environment production => Booting Puma => Rails 5.2.0 application starting in production => Run `rails server -h` for more startup options Puma starting in single mode... * Version 3.11.4 (ruby 2.5.1-p57), codename: Love Song * Min threads: 5, max threads: 5 * Environment: production * Listening on tcp://0.0.0.0:3000 Use Ctrl-C to stop

試したこと

  1. 他の環境(テスト,開発)では正常な動作確認済み。
  2. こちらの記事https://qiita.com/a_ishidaaa/items/74de8bdaecd637063c40

を参考にアセットのプリコンパイルとproductionのDBの設定はしました。
3. production.logにある"HomeController#index is missing a template for this request format and variant."を検索してhttps://ja.stackoverflow.com/questions/31784/actioncontrollerunknownformatをみたが該当してなさそうでした。

補足情報(FW/ツールのバージョンなど)

当方初めてサービスをデプロイするためどこのコードに当たればいいかいまいちわからず困っております。(enviroments/production.rbとかは触ってません。)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ログを成形して抜粋しますが

Started GET "/packs/application-aa194ef499aed15b2233beb202585763.css" for 127.0.0.1 at 2018-09-10 21:37:31 +0900 Processing by HomeController#index as CSS Parameters: {"path"=>"packs/application-aa194ef499aed15b2233beb202585763"} Completed 406 Not Acceptable in 1ms

というところで、HomeControllerで処理されてしまっていますね。

Rails5で、serverプロセス自体でpublic/下のリソースを配信する場合は、
通常、下記のような設定が必要です。

rb

1# config/environments/production.rb 2 3Rails.application.configure do 4 ... 5 config.public_file_server.enabled = true 6 ... 7end 8

一応、この辺に記述があります。すごく細かいですが、本番環境を設定するなら目を通した方が良いかもしれません。
https://railsguides.jp/configuring.html#rails%E5%85%A8%E8%88%AC%E3%81%AE%E8%A8%AD%E5%AE%9A

投稿2018/09/10 13:23

takumiabe

総合スコア661

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yu-imu

2018/09/10 13:44

ありがとうございます。お陰様で406エラー&MIME type ('text/html') is not executableはなくなりました。しかし、依然として真っ白な状態は変わりませんでした。 このようなリクエスト(http://localhost:3000/api/v1/topics/ranking)を投げたときに500エラーが出てしまうのですがこれもenviroment/production.rb設定の問題なのでしょうか?もしくはwebpacker側なのかお答えしていただけると助かります。
yu-imu

2018/09/10 15:24

残りの問題はReact側でしたので解決しました。
takumiabe

2018/09/11 02:27

解決して良かったです〜
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問