3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

jQueryがデプロイ後(AWS)反映されていないとき

Last updated at Posted at 2020-12-11

#はじめに

転職活動用のポートフォリオを作成中です。非同期いいね機能をjQueryを用いて実装し、ローカル環境で正常に作動したため、本番環境にデプロイしたところ、非同期にならない事象が発生しました。

##前提

Rails '6.0.0'
AWSのACMを使用して、https接続を実装済み

##仮説

はじめにデプロイの方法が間違っているのかと思い、EC2の再起動などを行いましたが、結果は変わらず。しかしここで同期でいいね機能は稼働していたため、非同期の役割をになっているjQueryの読み込みが本番環境ではできていないものと検討をつけました。

##結論

httpsによるSSL暗号通信下の環境でjQueryの読み込みができていなかった。

修正前

app/views/layouts/application.html.erb
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>

修正後

app/views/layouts/application.html.erb
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>

上記のように修正前はjQuery読み込みのURLをhttpにて記述していたため、反映されていなかった。

##その他の対処法

後々調べてみると、一般的で汎用性が高い方法は、httpの部分(プロトコル)を指定しない方法でした。

app/views/layouts/application.html.erb
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?