LoginSignup
1
2

More than 3 years have passed since last update.

【注意】Laravelで常時SSL化するときの「forceSchema」でのエラー:forceSchema does not exist

Posted at

バージョン

PHP:7.2.34
Laravel:6.20.19
Composer:2.0.11

概要

app/Providers/AppServiceProvider.php
    public function boot()
    {
        URL::forceSchema('https');
    }
}

上の状態でartisanコマンドを打つと、

BadMethodCallException : Method Illuminate\Routing\UrlGenerator::forceSchema does not exist.

とエラーが表示される。

こんな人、必見です↓

  • AWS Cloud9を使用する際にhttpsでのブラウザ確認が必要になったため設定ファイルを変更したい。

    • 参考図書:『動かして学ぶ! Laravel開発入門(著:山崎大助 翔泳社)』P.72←私はこの本で進行中に上のエラーが出ました!
  • PHP Laravelで常時SSL化を設定したい。
    https://webplus8.com/laravel-always-ssl/)

  • Laravel5.3から5.4にバージョンアップしたときにhttps強制でエラーが出た。
    https://qiita.com/sawadashota/items/79b74592b7d9800868f8)

解決方法

app/Providers/AppServiceProvider.php
    public function boot()
    {
        URL::forceScheme('https');
    }
}

何が違うかというと、URL::forceSchema('https');ではなく、
URL::forceScheme('https');に変更。

Schemaaeに変更しました。

エラーの原因

Laravel5.3まではforceSchema()で、Laravel5.4以降はforceScheme()を使うように変更があったようです。

詳しくはこちら↓

1
2
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
1
2