如何为运行 Laravel 的 apache vhost 设置 HTTP 基本身份验证

问题描述

我正在尝试为 apache vhost 中的 Laravel 应用程序设置 HTTP 基本身份验证,但它不起作用。

每次请求后它都会要求输入密码

这是我当前为该网站提供的 vhost 内容,目前它没有做任何事情。任何帮助表示赞赏

ServerAdmin admin@my-site.com
ServerName demo.my-site.com
ServerAlias www.my-site.com
DocumentRoot /var/www/demos/my-site/client/public

<Directory "/var/www/demos/my-site/client">
    Options +FollowSymLinks +MultiViews +Indexes
    AllowOverride All
    Order allow,deny
    Allow from all

    AuthType Basic
    AuthName "Protected Area! Please login!"
    AuthUserFile /var/www/.htpasswd
    Require valid-user
</Directory>

解决方法

您需要通过根文件夹中的 .htaccess 来处理它。从虚拟主机中删除 ..。

RewriteCond %{HTTP:Authorization} ^(.+)$ 重写规则 .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

,

最简单的方法:

将您的项目放入 xampp > your_project,浏览 localhost/your_project。