pythonanywhere 배포 후기

‍김다솔·2021년 6월 20일
0
post-custom-banner

배포를 향한 몸부림.jpg

이번 생에 배포는 처음이라..

 Django의 기본기도 완벽하지 않은 상태였지만 이번 기말 프로젝트라는 이유로 무조건 기간 내에 완성시켜야만 한다는 마음으로 배포까지 많은 시간을 투자했던 것 같다.

React + Django 배포 과정

react로 구현한 프론트엔드 폴더를 build한 후 client에 옮겨주었다. pythonanywhere는 이 client안에 있는 static폴더에 접근하여 가져오는 형식을 제공했다. 그러나 pythonanywhere으로부터 부여 받은 도메인에 들어가면 NOT FOUND 404가 나오면서 화면에 아무것도 노출되지 않았다.

 뒤늦게 알고보니 위 사진 속 static과 build한 client 안의 static과 다른 것이었다! 검색한 끝에 django에서 python manage.py collectstatic 명령어로 해결할 수 있다는 것을 pythonanywhere 공식 홈페이지에서 발견할 수 있었다. 덕분에 NOT FOUND 404는 클라이언트의 요청은 옳으나 서버 저장된 데이터의 경로 문제 때문에 발생할 수 있다는 걸 피부로 느낄 수 있었다.

또 나타난 CORS

저번에 만났던 CORS를 또 만났다. 하지만 이번엔 달랐다. Django에는 이를 구원해줄 라이브러리가 있었다. 그 이름하여 django-cors-headers.

https://github.com/adamchainz/django-cors-headers

각 리스트에 corsheaderscorsheaders.middleware.CorsMiddleware를 추가해준다.

CORS_ORIGIN_WHITELIST에 주소를 넣어주면 끝이지만.. 왠지 앞으로도 계속 만나게 될 CORS일 것 같은 느낌이 든다.

결과

http://2o1da.pythonanywhere.com/

profile
💻🎧⚽
post-custom-banner

0개의 댓글