Tobilog-Selection
この記事はLaravel Advent Calendar 2024の12日目です
こんにちは!とびろぐ管理人のとびうおです!
今回、Laravel 11にてapi.phpに書いたrouteが認識されない…という悲しい事態が発生したので解決策をお伝えいたします!
今回発生した問題
今回発生した問題は、手元でapi.phpに新しいrouteを追加をして、認識したのですが、ECSのタスクに挙げた際に認識してくれないという問題が発生しました。
手元で行っていたこと
php artisan install:api
とびうお
上記の形でinstallしました
そして、
php artisan route:list
と打つと、無事api.phpに書いたrouteが認識されていました。
とびうお
ここまでは順調でした
しかし…
しかし、aws ecs上で
php artisan route:list
を打つと、api.phpに書いたものが認識されていませんでした…
とびうお
ここでかなり詰まってしまった…
キャッシュクリアとか色々してみましたが、認識できませんでした
解決策
今回、解決策としては、Laravelのbootstrap/app.phpに以下の記述を書くことで解決しました。
<?php
use Illuminate\Foundation\Application;
use Illuminate\Foundation\Configuration\Exceptions;
use Illuminate\Foundation\Configuration\Middleware;
use App\Http\Middleware\HandleInertiaRequests;
use Illuminate\Support\Facades\Route;
return Application::configure(basePath: dirname(__DIR__))
->withRouting(
using: function () {
Route::middleware('api')
->prefix('api')
->group(base_path('routes/api.php'));
Route::middleware('web')
->group(base_path('routes/web.php'));
},
commands: __DIR__.'/../routes/console.php',
health: '/up',
)
->withMiddleware(function (Middleware $middleware) {
$middleware->web(append: [
HandleInertiaRequests::class,
]);
})
->withExceptions(function (Exceptions $exceptions) {
//
})->create();
とびうお
自分で定義する形にしました
Laravel - The PHP Framework For Web Artisans
Laravel is a PHP web application framework with expressive, elegant syntax. We’ve already laid the foundation — freeing you to create without sweating the small...
とびうお
公式ドキュメントにもしっかり書いてありました…
が、なぜ手元で認識されたのが認識されてないのかは謎いです。
まとめ
まとめると、bootstrap/app.phpにカスタムで記述すると良いということです!
Laravel 11、10と違って色々変わってて…ちょっと大変ですね。
とびうお
Laravel 11、使い慣れるまで時間かかりそう..
その他の記事
とびろぐではこれ以外にもLaravelの記事を多く書いています!
ぜひみてみてください!
Laravel
「Laravel」の記事一覧です。
コメント