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

Posted

技术标签:

【中文标题】如何为运行 Laravel 的 apache vhost 设置 HTTP 基本身份验证【英文标题】:How to setup HTTP basic auth for apache vhost running Laravel 【发布时间】:2021-08-25 03:21:09 【问题描述】:

我正在尝试在 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>

【问题讨论】:

可以使用 Laravel 基本认证:laravel.com/docs/8.x/authentication#http-basic-authentication 事情是我不想使用它。我想为它使用虚拟主机配置 【参考方案1】:

最简单的方法:

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

【讨论】:

【参考方案2】:

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

RewriteCond %HTTP:Authorization ^(.+)$ RewriteRule .* - [E=HTTP_AUTHORIZATION:%HTTP:Authorization]

【讨论】:

以上是关于如何为运行 Laravel 的 apache vhost 设置 HTTP 基本身份验证的主要内容,如果未能解决你的问题,请参考以下文章

如何为 laravel 提供更多内存

如何为运行 WHM 的服务器设置默认的 Apache 登录页面?

如何为 Laravel 发布和自定义 .htaccess?

如何为每小时 15 分钟创建设置的 Laravel 时间表?

如何为单个 HTML 元素重新加载或重新渲染 CSS? [复制]

如何为apache提供cmd权限?