ddtwn
@ddtwn

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

laravel/uiの認証ページが一瞬しか表示されない

Q&A

Closed

解決したいこと

laravel10とVue3でSPAシステムを作っており、認証機能を後付けで追加しようとしているところではまっております。

laravel/uiを使用したく、この記事を参考に、以下のコマンドを実行しました。

composer require laravel/ui
php artisan ui bootstrap --auth

web.phpも変更されました。(SPAのページアクセスが優先されないよう順番は入れ替えました)

web.php
+ Auth::routes();
+ Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');

Route::get('/{any?}', fn() => view('app')) -> where('any', '.+');

これでlocalhost:8000/register,localhost:8000/loginを打ち込むと、認証ページが表示されます。ただ、一瞬表示された後すぐに空のページ(認証機能を追加する以前に同URLを打ち込むと出る想定のページ)が表示されます。

おそらく、web.phpの一番下のルートでの判定が行われたものと思われるのですが、原因が全くわかりません。
原因か代替案をお教えいただきたいです。

migrateは使用しておらず、アプリのDBはすべてSQL文で作成しております。
他に記載が必要な資材があれば追記いたします。
※アプリ制作の手順はマイページの最新記事にまとめておりますので、余裕がありましたら、そちらもご参考いただきたいです。

0

2Answer

phpであればexit();で処理を終了させることが可能です。
怪しそうな処理の直前でexit();を止め調査すると、どのコードが原因か確認可能です。

1Like

Laravelあんまり詳しくないので恐縮ですが,デフォルトページへの誘導が目的であれば /{any}みたいなのでマッチさせるのではなくRoute::fallbackを使用してはいかがでしょうか.

一瞬表示されるというあたりフロントエンド側に問題がありそうな気がしないでもないですが,ログの出元を調べないと何とも.

1Like

Comments

  1. @ddtwn

    Questioner

    fallbackを使用するとマッチしなかった場合という条件を実現できそうです!
    ありがとうございます!
    まだ試行錯誤の段階なので、sanctumなど他の認証機能も検討しつつ動作確認したいです。

Your answer might help someone💌