在 Linux 下使用 Laravel 设置路由,本质上和操作系统无关,主要是 Laravel 的路由配置。下面从基础到常见用法给你一个清晰说明。
Laravel 的路由文件在:
routes/
常用文件:
routes/web.php:Web 页面路由(默认)routes/api.php:API 路由(无 CSRF)cd /var/www/your-laravel-project
编辑路由文件:
vim routes/web.php
Route::get('/hello', function () {
return 'Hello Laravel';
});
访问:
http://your-domain.com/hello
php artisan make:controller UserController
app/Http/Controllers/UserController.php
public function index()
{
return 'User List';
}
use App\Http\Controllers\UserController;
Route::get('/users', [UserController::class, 'index']);
Route::get('/test', ...);
Route::post('/test', ...);
Route::put('/test', ...);
Route::delete('/test', ...);
Route::get('/user/{id}', function ($id) {
return 'User ID: ' . $id;
});
可选参数:
Route::get('/user/{name?}', function ($name = 'Guest') {
return $name;
});
Route::middleware(['auth'])->group(function () {
Route::get('/dashboard', function () {
return 'Dashboard';
});
});
routes/api.php
Route::get('/posts', [PostController::class, 'index']);
访问:
http://your-domain.com/api/posts
chown -R www-data:www-data storage bootstrap/cache
chmod -R 775 storage
php artisan route:cache
修改路由后清除:
php artisan route:clear
确保:
try_files $uri $uri/ /index.php?$query_string;
php artisan route:list
如果你愿意,可以告诉我:
我可以直接给你 可复制的完整配置示例。