If you have a set of routes related to a certain "section", you may separate them in a special routes/XXXXX.php file, and just include it in routes/web.php
Example with routes/auth.php in Laravel Breeze by Taylor Otwell himself:
Route::get('/', function () { return view('welcome');}); Route::get('/dashboard', function () { return view('dashboard');})->middleware(['auth'])->name('dashboard'); require __DIR__.'/auth.php';
Then, in routes/auth.php:
use App\Http\Controllers\Auth\AuthenticatedSessionController;use App\Http\Controllers\Auth\RegisteredUserController;// ... more controllers use Illuminate\Support\Facades\Route; Route::get('/register', [RegisteredUserController::class, 'create']) ->middleware('guest') ->name('register'); Route::post('/register', [RegisteredUserController::class, 'store']) ->middleware('guest'); // ... A dozen more routes
But you should use this include() only when that separate route file has the same settings for prefix/middlewares, otherwise it's better to group them in app/Providers/RouteServiceProvider:
public function boot(){ $this->configureRateLimiting(); $this->routes(function () { Route::prefix('api') ->middleware('api') ->namespace($this->namespace) ->group(base_path('routes/api.php')); Route::middleware('web') ->namespace($this->namespace) ->group(base_path('routes/web.php')); // ... Your routes file listed next here });}
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses
How to Build Laravel 12 API From Scratch
28 lessons
1 h 21 min
Laravel 12 For Beginners: Your First Project
15 lessons
1 h 32 min
Filament 4 From Scratch
28 lessons
2 h 25 min