모든 Laravel 라우트는 routes/ 디렉터리의 라우트 파일에 정의합니다.
이 파일들은 bootstrap/app.php의 설정에 따라 Laravel이 자동으로 로드합니다.routes/web.php에는 브라우저용 라우트를 정의합니다.
이 파일의 라우트에는 web 미들웨어 그룹이 적용되어 세션·CSRF 보호·쿠키 암호화가 제공됩니다.
use App\Http\Controllers\UserController;Route::get('/user', [UserController::class, 'index']);
애플리케이션이 상태 비저장 API를 제공하는 경우, install:api Artisan 명령으로 API 라우팅을 활성화할 수 있습니다.
php artisan install:api
install:api 명령은 Laravel Sanctum을 설치하고 routes/api.php 파일을 생성합니다.
Sanctum은 서드파티 API 컨슈머, SPA, 모바일 애플리케이션용의 단순하고 견고한 API 토큰 인증 가드를 제공합니다.
Route::get('/user', function (Request $request) { return $request->user();})->middleware('auth:sanctum');
routes/api.php의 라우트는 상태 비저장이며, api미들웨어 그룹이 적용됩니다.
또한 모든 라우트에는 자동으로 /api URI 프리픽스가 적용되므로 수동으로 부여할 필요는 없습니다.
프리픽스를 변경하는 경우, 애플리케이션의 bootstrap/app.php 파일을 편집합니다.
Route::middleware(['auth'])->group(function () { Route::get('/dashboard', function () { // 인증된 사용자만 접근 가능 }); Route::get('/account', function () { // 인증된 사용자만 접근 가능 });});
Route::prefix('admin')->group(function () { Route::get('/users', function () { // /admin/users로 접근 가능 }); Route::get('/posts', function () { // /admin/posts로 접근 가능 });});