Django - CSRF token error - 장고 4 이상에서

Django 4 버전 이상에서 CSRF 체크하는 부분이 좀 더 엄격하게 되어 있다는 사실을 에러가 나면 알게된다. 이전에 아무 문제 없이 잘 돌았는데, 새로 설치하다 보니 장고가 최신버전으로 설치되고, 잘 동작하던 웹 서비스가 갑자기 CSRF 에러를 발생시키며 404 에러 등을 찍는다....이러면 이렇게 수정하면 된다.

 

https://not-to-be-reset.tistory.com/552

 

CSRF 토큰 오류

에러 내용 django 에서 DEBUG 옵션을 True로 둔 뒤, POST 요청을 보내면 아래와 같이 에러 내용이 출력된다. 1. 웹 브라우저에서 접속 시 403 error CSRF verification failed. Request aborted 2. django log For..

not-to-be-reset.tistory.com

 

settings.py 에 CSRF_TRUSTED_ORIGINS 옵션을 보강해 주면 된다. 도메인이 있으면 수월하고 없으면 직접 IP 주소들을 입력해 주면 된다.

 

ALLOWED_HOSTS = ['도메인명', 'IP address', ...]
CSRF_TRUSTED_ORIGINS = ['허용도메인(서비스도메인)']

 

간단하게 팁만 정리해둠

아래글도 참고하세요.

https://stackoverflow.com/questions/38841109/csrf-validation-does-not-work-on-django-using-https

 

CSRF validation does not work on Django using HTTPS

I am developing an application which the frontend is an AngularJS API that makes requests to the backend API developed in Django Rest Framework. The frontend is on the domain: https://front.bluem...

stackoverflow.com

기능인지 버그인지 헷갈려 에공

RealToughCandy.com 님의 사진, 출처: Pexels