如何在 apache vhost 中使用密码保护 Laravel 站点?

Posted

技术标签:

【中文标题】如何在 apache vhost 中使用密码保护 Laravel 站点?【英文标题】:How to password protect Laravel site within apache vhost? 【发布时间】:2021-09-14 03:44:45 【问题描述】:

我正在尝试使用 Apache vhost 文件对我的 Laravel 应用程序进行密码保护。它会询问我的用户名和密码,但每次我重新加载页面时都会询问每条路线。

谁能解释一下我需要如何更改配置文件才能让网站只询问一次密码和用户名?

这是我的 vhost 文件的目录部分:

    ServerAdmin admin@mysite.com
    ServerName staging.app.mysite.ee
    ServerAlias www.staging.app.mysite.ee
    DocumentRoot /var/www/mysite/app/staging/public

    <Directory "/var/www/mysite/app/staging">
            Options +FollowSymLinks +MultiViews +Indexes
            AllowOverride All
            Order allow,deny
            Allow from all

            #AuthType Basic
            #AuthName "Restricted Area"
            #AuthUserFile /var/www/.htpasswd
            #Require valid-user
    </Directory>

【问题讨论】:

【参考方案1】:

您可以将以下代码放入项目文档根目录中的任一 .htaccess 文件中。或者您可以在 apache 配置文件中添加以下代码。

AuthName "Dialog prompt"
AuthType Basic
AuthUserFile FULL_PATH_OF_FILE_HTPASSWD
Require valid-user

.htpasswd 文件应包含用户名和密码。

Username:HASHED_PASSWORD

这将只提示一次密码,即。将在会话中设置。

【讨论】:

每次请求后仍然提示

以上是关于如何在 apache vhost 中使用密码保护 Laravel 站点?的主要内容,如果未能解决你的问题,请参考以下文章

KVM VHOST中irqfd的使用

Rabbitmq~对Vhost的配置

rabbitmq vhost

带有 vhost 和 greenlock-express 的 NodeJS 子域

我们如何使用 vhost 和 nodejs 添加子域 dynamicllay

Red Hat大佬教你如何使用vhost-user-blk对接spdk或qemu