Comment corriger Weblate « Origin checking failed - ... does not match any trusted origins. » sur Docker/Traefik

Problème

À chaque soumission de formulaire sur Weblate — en d’autres termes, pour toute requête POST comme dans les paramètres — vous voyez le message d’erreur suivant

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.

Solution

Dans ma configuration basée sur Traefik / docker-compose (voir 10-minute Weblate setup using docker-compose & Traefik pour plus de détails), cela a été facile à corriger en ajoutant

.env
WEBLATE_SECURE_PROXY_SSL_HEADER=HTTP_X_FORWARDED_PROTO,https

au fichier .env, qui est mappé vers l’environment du conteneur Docker.

Notez que j’ai également défini ce qui suit :

.env_example
WEBLATE_ALLOWED_HOSTS=*
WEBLATE_SITE_DOMAIN=weblate.mydomain.com
#WEBLATE_ENABLE_HTTPS= # NE PAS définir ceci car HTTPS est fourni par le proxy inverse

ce qui peut également être requis pour une configuration fonctionnelle.


Consultez les articles similaires par catégorie : Weblate