🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 6

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

Ruby on Rails

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

2711閲覧

エラー404を解消したい。

_nussy_

総合スコア5

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 6

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

Ruby on Rails

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2021/01/03 10:23

編集2021/01/03 13:00
取り組んでいること

 個人のアプリケーションを作成しており、本番環境にデプロイした際にエラーが起こりました。

エラー内容
ゲストログインをすると「このページが見つかりません」という表示になります。
エラー404:リンク先のページに問題があるということ
→エラー表示:net::ERR_ABORTED 404 (Not Found)

######環境
ruby '2.6.5'
rails '6.0.3.4'
サーバー:AWS(EC2)
web Server;Nginx
Application Server:Unicorn

行ったこと

 検証画面より、エラー対象になり得るコードが下記のものを表示されていました。

HTML head要素内   <script src="/packs/js/application-a1e7bfdb59418e304c0d.js" data-turbolinks-track="reload"></script>

このことを踏まえて、2点取り組みました。
①上記のエラー対象コード、"/packs/js/application-a1e7bfdb59418e304c0d.js" を確認・編集しようと試みましたが、
このファイルを見つけることが出来ませんでした。

 ②エラー404より、リンク先にまつわるページ・コードを一旦削除してみましたが、エラー404は変わりませんでした。
数日前まで正常に動いていたので、覚えている範囲内でコードを元に戻しましたが、エラー404のままでした。

 

下記にゲストログイン用のコードも添付しております。

user_controller.rb  class UsersController < ApplicationController   :   : def new_guest user = User.find_or_create_by!(email: 'guest@example.com') do |u| u.nickname = 'Guest' u.password = SecureRandom.urlsafe_base64 u.password_confirmation = u.password end sign_in user redirect_to root_path end end
ルーティング Rails.application.routes.draw do   : devise_for :users post '/users/guest_sign_in', to: 'users#new_guest'   :   : end
Nginx upstream app_server { # Unicornと連携させるための設定 server unix:/var/www/アプリ名/shared/tmp/sockets/unicorn.sock; } server { # ポート番号 listen 80; server_name 取得したドメイン; client_max_body_size 2g; # 接続が来た際のrootディレクトリ root /var/www/アプリ名/current/public; # assetsファイル(CSSやJavaScriptのファイルなど)にアクセスが来た際に適用される設定 location ^~ /assets/ { gzip_static on; expires max; add_header Cache-Control public; root /var/www/アプリ名/current/public; } try_files $uri/index.html $uri @unicorn; location @unicorn { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://app_server; } error_page 500 502 503 504 /500.html; }

対処方法などがあれば、是非アドバイスをお願い致します。
足りないデータ等があれば、ご提供させていただきます。
拙い説明ではありますが、ご検討よろしくお願い致します。

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

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

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

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

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

winterboum

2021/01/03 12:06

/packs/js/application-a1e7bfdb59418e304c0d.js はどこを探しました? nginx のconfigに問題があるのではないか、、と思われます。それを載せてください
_nussy_

2021/01/03 13:02

winterboum様 ご返信ありがとうございます! /packs/js/application-a1e7bfdb59418e304c0d.jsに関しては、 使用しているエディタで検索をかけた結果、そのようなファイルが見当たりませんでした。 また、nginxのconfigはアップさせていただきましたのでご確認お願い致します。
guest

回答1

0

ベストアンサー

そのfileは webpack を実行すると public に作られます。
editorで作るものではないです。

bundle exec assets:precompile で実行してくれるかな。
(application の後の長い文字列は変わるかも)
で、それが出来てもまだ404でしたら
location ^~ /assets/ の他に /packs/ も定義してみてください。

投稿2021/01/03 13:43

winterboum

総合スコア23567

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

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

_nussy_

2021/01/03 14:12

winterboum様 ご返信ありがとうございます。 先ほど、EC2のサーバー内でrails assets:precompile RAILS_ENV=productionを実行したところ Could not find erubi-1.10.0 in any of the sources Run `bundle install` to install missing gems. 上記のエラー文?が出ていました。 これはローカルとのGemに違いがあるため、bundle installを実施して 差を埋める形にすればよろしいのでしょうか?
winterboum

2021/01/04 04:42

bundle install db:migrate, assets:precompile あたりは自動deployでは必ずやってますね
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問