RockyLinux9.3 + laravel9 で、認証の仕組みを入れてみます。
Laravel9 のインストールと、AdminLTE の初期設定までは、下記の記事で
Laravel9 のインストールと、AdminLTE の初期設定まで
laravel9 とAdminLTEの初期設定までを行います。 Nginx / php8.1 / MySQL 8.0 の設定は、↓この記事をご参考に 仮想ユーザの追加 # /usr/sbin/adduser larauser # chomo...
「nodejs」と「nmp」
「nodejs」と「nmp」を入れます。
# dnf install nodejs npm Rocky Linux 9 - BaseOS 8.1 kB/s | 4.1 kB 00:00 Rocky Linux 9 - AppStream 8.3 kB/s | 4.5 kB 00:00 Rocky Linux 9 - Extras 6.1 kB/s | 2.9 kB 00:00 Dependencies resolved. ============================================================================================================================================================ Package Architecture Version Repository Size ============================================================================================================================================================ Installing: nodejs x86_64 1:16.20.2-4.el9_3 appstream 111 k npm x86_64 1:8.19.4-1.16.20.2.4.el9_3 appstream 1.7 M Installing dependencies: nodejs-libs x86_64 1:16.20.2-4.el9_3 appstream 14 M Installing weak dependencies: nodejs-docs noarch 1:16.20.2-4.el9_3 appstream 7.1 M nodejs-full-i18n x86_64 1:16.20.2-4.el9_3 appstream 8.2 M (略) Installed: nodejs-1:16.20.2-4.el9_3.x86_64 nodejs-docs-1:16.20.2-4.el9_3.noarch nodejs-full-i18n-1:16.20.2-4.el9_3.x86_64 nodejs-libs-1:16.20.2-4.el9_3.x86_64 npm-1:8.19.4-1.16.20.2.4.el9_3.x86_64 Complete!
↑nodejs , nmp がインストールできました。
認証、breeze
laravel8 から、「breeze」という認証システムが登場しました。
$ composer require laravel/breeze Composer could not detect the root package (laravel/laravel) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version Cannot use laravel/breeze's latest version v2.0.0 as it requires php ^8.2.0 which is not satisfied by your platform. ./composer.json has been updated Composer could not detect the root package (laravel/laravel) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version Running composer update laravel/breeze INFO Discovering packages. jeroennoten/laravel-adminlte ..... DONE laravel/breeze ................... DONE laravel/sail ..................... DONE laravel/sanctum .................. DONE laravel/tinker ................... DONE nesbot/carbon .................... DONE nunomaduro/collision ............. DONE nunomaduro/termwind .............. DONE spatie/laravel-ignition .......... DONE 86 packages you are using are looking for funding. Use the `composer fund` command to find out more! > @php artisan vendor:publish --tag=laravel-assets --ansi --force INFO No publishable resources for tag [laravel-assets]. No security vulnerability advisories found. Using version ^1.19 for laravel/breeze
↑php 8.2 以上だと、breeze version 2.0 以上が入るようですが、今回、php8.1系なので、breeze version 1.19系が準備されました。
$ php artisan breeze:install Which stack would you like to install? blade ............................. 0 react ............................. 1 vue ............................... 2 api ............................... 3 > 0 Would you like to install dark mode support? (yes/no) [no] > Would you prefer Pest tests instead of PHPUnit? (yes/no) [no] > INFO Installing and building Node dependencies. added 142 packages, and audited 143 packages in 11s 36 packages are looking for funding run `npm fund` for details found 0 vulnerabilities npm notice npm notice New major version of npm available! 8.19.4 -> 10.5.0 npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.5.0 npm notice Run npm install -g npm@10.5.0 to update! npm notice > build > vite build vite v4.5.3 building for production... 51 modules transformed. public/build/manifest.json 0.26 kB │ gzip: 0.13 kB public/build/assets/app-b057de86.css 27.62 kB │ gzip: 5.43 kB public/build/assets/app-9423d52e.js 146.26 kB │ gzip: 53.88 kB built in 3.19s INFO Breeze scaffolding installed successfully.
↑「blade」「react」「vue」「api」のタイプが選べますが、今回、「blade」タイプを選びました。(「0」をタイプ)
無事、インストールができました。
laravel 認証の画面
$ route/web.php
も書き換わりますので、バックアップをしておきましょう。
↑トップが、初期の画面、「welcome」に変わります。
そして、画面上では、右上に
Log in
Register
という文字が、登場します。
認証配下にする
$ route/web.phpにおいて、 Route::resource('Hoge',HogeController::class);
というのページがあったとすると、
↓こうすることで、認証配下のページになります。
Route::group(['middleware' => 'auth'], function() { Route::resource('Hoge',HogeController::class); });