如何通过 htaccess 保护商店?
Posted
技术标签:
【中文标题】如何通过 htaccess 保护商店?【英文标题】:How to protect the shop via htaccess? 【发布时间】:2021-06-05 11:04:26 【问题描述】:我想使用 htaccess 身份验证保护来保护 Shopware 6 安装。但是当我在/public
文件夹中的.htaccess
文件中设置它时,我总是在后端(登录后)得到一个“htaccess 循环”,我不能再使用它了。
我试图排除 /api
和 /admin
但我对此并不满意。
我该如何解决这个问题?
/public/.htaccess
AuthName "Prompt"
AuthType Basic
AuthUserFile /home/my-project/.htpasswd
Require valid-user
SetEnvIf REQUEST_URI "(/admin)" ALLOW
SetEnvIf REQUEST_URI "(/api)" ALLOW
<RequireAny>
Require env ALLOW
Require valid-user
</RequireAny>
【问题讨论】:
i always get a "htaccess loop" in the backend
你到底是从哪里得到这个错误的?
嗨。我在登录过程中得到它。我编辑了我的问题。谢谢!
没有称为htaccess loop
的错误,并且您的代码中没有显示重写规则。您是否从代码中收到此错误?
【参考方案1】:
把它放在你的public/.htaccess
文件的开头:
AuthType Basic
AuthName "Please login."
AuthUserFile /home/my-project/.htpasswd
<RequireAny>
Require expr %THE_REQUEST =~ m#.*?\s+\/api.*?#
Require valid-user
</RequireAny>
// Rest goes here -->
https://issues.shopware.com/issues/NEXT-4243(德语)
非德语用户的基本翻译:
票证:NEXT-4243 | auth_basic 条目阻止后端访问
此票证不用于实施。因此它被关闭了。导致此类决定的原因可能包括故障单的复杂性或范围,以及更改导致的可能错误来源。 [...] 这里的短期解决方案不是通过托管配置创建身份验证,而是通过htaccess / htpasswd创建它,然后不对URL“/api”的请求进行htaccess中的身份验证
【讨论】:
您的解决方案不起作用 :'(以上是关于如何通过 htaccess 保护商店?的主要内容,如果未能解决你的问题,请参考以下文章
在 .htaccess 中为 WordPress 安全添加安全标头
如何阻止对根文件夹中除 index.php 之外的所有 .php 的访问(通过 .htaccess)?