使用 Caddy 反向代理的基本身份验证导致特定请求出现 401 错误

Basic Auth with Caddy Reverse Proxy Leads to 401 Errors on Specific Requests

提问人:romamik 提问时间:11/14/2023 更新时间:11/14/2023 访问量:30

问:

我正在尝试在我的 VPS 上部署在 https://github.com/cogentapps/chat-with-gpt 找到的应用程序的个人实例,并希望使用基本身份验证来保护它。我的 Caddyfile 配置如下:

chat.domain.name {
    basicauth {
        user pwd_hash
    }
    reverse_proxy chat-service:3000
}

Docker 配置设置正确,应用程序无需基本身份验证即可平稳运行。但是,启用基本身份验证后,尽管初始页面加载会提示输入凭据并成功进行,但我在后续请求中遇到了问题。

“/manifest.json”无法加载,导致 401 错误。奇怪的是,如果我直接访问 URL,它会加载而不会再次提示输入凭据。所有其他文件都正确加载,我可以注册用户、登录和注销等。

主要问题是,对完成 API 的任何调用都会遇到重复的身份验证弹出窗口,这些弹出窗口永远不会解决,即使在输入正确的凭据后,弹出窗口也会再次显示。在浏览器的开发人员工具中,这些请求似乎没有收到响应,最终被应用程序超时。

请求从这里提出:https://github.com/cogentapps/chat-with-gpt/blob/c75663bf9050735ffe5b8e1fe042db2b1095b47e/app/src/core/utils/sse.ts#L52C18-L52C18

为什么浏览器在初始提示后无法将请求的身份验证标头附加到同一域?

此外,是否有其他方法可以保护不涉及修改其源代码的应用程序?

HTTP XMLhttpRequest 反向代理 基本身份验证 Caddy

评论


答: 暂无答案