HTTP 基本认证

最后更新于:2022-04-01 15:05:48

HTTP 基本认证提供了一个快速的方式来认证用户而不用特定设置一个「登入」页。在您的路由内设定 `auth.basic` 中间件则可启动这个功能: ## 用 HTTP 基本认证保护路由 ~~~ Route::get('profile', ['middleware' => 'auth.basic', function() { // Only authenticated users may enter... }]); ~~~ 默认情况下 `basic` 中间件会使用用户的 email 列当做「 username 」。 ## 设定无状态的 HTTP 基本过滤器 你可能想要使用 HTTP 基本认证,但不会在 session 里设置用户身份的 cookie,这在 API 认证时特別有用。如果要這樣做,定义一个中间件并调用 `onceBasic` 方法: ~~~ public function handle($request, Closure $next) { return Auth::onceBasic() ?: $next($request); } ~~~ 如果你使用 PHP FastCGI,HTTP 基本认证可能无法正常运行。请在你的 .htaccess 文件内新增以下代码: ~~~ RewriteCond %{HTTP:Authorization} ^(.+)$ RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] ~~~
';