Weblate:如何修复 Docker/Traefik 下的 'Origin checking failed - ... does not match any trusted origins.' 错误
问题
在 Weblate 上提交表单时——即任何 POST 请求(如在设置页面中)——你会看到以下错误消息:
weblate_csrf_error.txt
Keine Berechtigung
CSRF-Verifizierung fehlgeschlagen. Anfrage abgebrochen.
Grund für CSRF-Fehler: Origin checking failed - https://weblate.mydomain.com does not match any trusted origins.解决方案
在我的 Traefik / docker-compose 设置中(详见使用 docker-compose 和 Traefik 的 10 分钟 Weblate 部署),只需在 .env 文件中追加以下内容即可轻松修复:
.env
WEBLATE_SECURE_PROXY_SSL_HEADER=HTTP_X_FORWARDED_PROTO,https该 .env 文件会映射到 Docker 容器的 environment。
注意,我还设置了以下内容:
.env_example
WEBLATE_ALLOWED_HOSTS=*
WEBLATE_SITE_DOMAIN=weblate.mydomain.com
#WEBLATE_ENABLE_HTTPS= # 不要设置此项,因为 HTTPS 由反向代理提供这些配置可能也是正常运行的必要条件。
按类别查看类似文章:
Weblate
如果这篇文章对您有帮助,请考虑请我喝杯咖啡或通过 PayPal 捐款,以支持 TechOverflow 上新文章的研究与发布