水曜日, 7月 02, 2025

Laravel サイトのアップグレード

 Laravel のサイトをアップグレードする機会がありましたので、その方法をここで書いておきたいと思います。かなり構成というか書き方が変わってきているので注意が必要です。

1. 新しいLaravelプロジェクトの作成

まずはクリーンなLaravel環境を作成します。

composer create-project laravel/laravel new-site

2. 既存コードの移行

必要なファイルを新しいプロジェクトにコピーします:

  • コントローラapp/Http/Controllers

  • モデルapp/Models

  • ビューresources/views

  • ルーティングroutes/web.php または routes/api.php

  • ミドルウェア、サービス、ジョブなど → 必要に応じて

3. Composerのオートロードを更新

クラスのオートロードを再生成します。

composer dump-autoload

4. 必要なパッケージの再インストール

Spatieの権限管理パッケージを使っている場合なら

composer require spatie/laravel-permission

5. Apacheの設定に注意

重要なのが、Apacheの mod_rewrite モジュールを有効化することです。これはひっかかりました。これを忘れるとルーティングが正しく機能せず、トップページしか表示できません。

LoadModule rewrite_module modules/mod_rewrite.so

6. ルーティングの見直し・更新

Laravelのバージョンアップに伴い、ルーティングの記述方法や構文が変更されていることがあります

  • クロージャベースのルートやコントローラルートにおける名前空間の指定方法

  • Route::controller()Route::middleware() を使用したグルーピング構文

  • Web/APIルートファイルでのミドルウェアやプレフィックスの指定

Laravel 8以降では、RouteServiceProvider が変更されましたので変更が必要な場合があります。web.php の記述はこれで動きます。

use App\Http\Controllers\CaseController;

Route::resource('case', CaseController::class);

Laravel サイトのアップグレード

 Laravel のサイトをアップグレードする機会がありましたので、その方法をここで書いておきたいと思います。かなり構成というか書き方が変わってきているので注意が必要です。 1. 新しいLaravelプロジェクトの作成 まずはクリーンなLaravel環境を作成します。 compo...