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

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

新規登録して質問してみよう
ただいま回答率
85.35%
HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

AWS(Amazon Web Services)

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

Q&A

2回答

4159閲覧

Laravelでhttps化したら419エラーが出るようになりました

tomoki_at

総合スコア6

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

AWS(Amazon Web Services)

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

0グッド

0クリップ

投稿2021/04/06 01:35

前提・実現したいこと

laravelでシステムを構築
テスト環境 (http)では問題なく動作が行われることを確認済み
本番環境で最初httpでやっても動くことは確認しましたが、その後https化すると動かなくなりました

またlaravel authを使用しているのですがそこでのloginもできないので書き方の他に気をつけないといけないことがあるのかなと思ってます

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

419 Page Expired

該当のソースコード

resources/auth/login.blade.php

1@extends('layouts.app') 2 3@section('content') 4 5----省略----- 6 7<form method="POST" action="{{ route('login') }}"> 8 @csrf 9 10 <div class="form-group row"> 11 <label for="email" class="col-md-4 col-form-label text-md-right">メールアドレス</label> 12 13 <div class="col-md-6"> 14 <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus> 15 16 @error('email') 17 <span class="invalid-feedback" role="alert"> 18 <strong>{{ $message }}</strong> 19 </span> 20 @enderror 21 </div> 22 </div> 23 24 <div class="form-group row"> 25 <label for="password" class="col-md-4 col-form-label text-md-right">パスワード</label> 26 27 --省略-- 28</form>

resources/layouts/app.blade.php

1<head> 2 <meta charset="utf-8"> 3 <meta name="viewport" content="width=device-width, initial-scale=1"> 4 5 <!-- CSRF Token --> 6 <meta name="csrf-token" content="{{ csrf_token() }}"> 7 8 <title>GOL.ON</title> 9 10 <!-- Scripts --> 11 <script src="{{ secure_asset('js/app.js') }}" defer></script> 12 13 <!-- Fonts --> 14 <link rel="dns-prefetch" href="//fonts.gstatic.com"> 15 <link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet"> 16 17 <!-- Styles --> 18 <link href="{{ secure_asset('css/app.css') }}" rel="stylesheet"> 19</head>

試したこと

https://bonoponz.hatenablog.com/entry/2021/02/10/%E3%80%90Laravel%E3%80%91SSL%E9%80%9A%E4%BF%A1%E3%81%AB%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B%EF%BC%8F419%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%AB%E3%81%AA%E3%81%A3%E3%81%9F%E3%82%89%E7%A2%BA%E8%AA%8D

こちらの記事を参考に
App\Http\Middlewar\TrustProxies.phpにprotected $proxies = ‘*’;を追加

env
APP_DEBUG=trueからfalseに変更

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

laravel 6
PHP 8.0.3
docker 20.10.5
docker-compose 1.28
https://qiita.com/ucan-lab/items/5fc1281cd8076c8ac9f4#%E4%BD%BF%E3%81%84%E6%96%B9
基本的にこちらの記事を参考に作成

aws
lightsailを使用
OS ubuntu

正直手詰まりです
よろしくお願いします

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2021/04/06 01:42

もちろん、.envで定義するAPP_URLはhttpsで始まるものにしてますよね?
tomoki_at

2021/04/06 01:54

質問ありがとうございます いか.envの一部です APP_NAME=Laravel APP_ENV=production APP_DEBUG=false APP_URL=https://ドメイン名 APP_URLはhttpsにしてます
退会済みユーザー

退会済みユーザー

2021/04/06 01:55

storage/logs にエラーログが出力されていれば、それも掲載してください。
tomoki_at

2021/04/06 02:17

storage/logs の中を確認しましたがそれらしいエラーは出力されていないです
退会済みユーザー

退会済みユーザー

2021/04/06 02:28

.envを変えたことを反映するのに、php artisan config:clear や php artisan config:cache してみるとか。
tomoki_at

2021/04/06 02:34

ありがとうございます 二つのコマンド試しましたが変わらずです
退会済みユーザー

退会済みユーザー

2021/04/06 02:56

POST先URLがhttpsで始まってない、なんてことはないですかね。
tomoki_at

2021/04/06 03:13

ありがとうございます 大変申し訳ないのですが、この場合はPOST先のURLの確認変更はどこでできるのでしょうか?
退会済みユーザー

退会済みユーザー

2021/04/06 04:07

なるほど、もしかすると php artisan view:clear や php artisan view:cache も必要なのかも。
tomoki_at

2021/04/06 04:30

ありがとうございます 両コマンド試しましたが変化見られないです
guest

回答2

0

環境を変えたら、
php artisan config:clear
php artisan route:clear
php artisan view:clear
をやるべきかと。

bladeテンプレートのこの箇所:

php

1<form method="POST" action="{{ route('login') }}">

のaction属性を展開するのに、一度展開した結果がキャッシュに残っているので、
色んな場面のキャッシュを消すのに先の3コマンドを実行する必要があるかと。

投稿2021/04/06 04:08

編集2021/04/06 04:23
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

0

ブラウザのキャッシュクリアをした上で、もう一度試してみてください。

投稿2021/04/06 10:53

riyo

総合スコア33

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問