본문 바로가기
Sundry/Python

Django에서 WhiteNoise 사용하기

by phpdoumi 2018. 11. 9.

Django에서 WhiteNoise 사용하기

4월 21, 2017 zeallat

상황

AWS Elastic Beanstalk에 배포한 내 Django앱에서 CSS, js파일들이 404에러를 뱉어냈다. 해당 경로에서 파일들을 찾지 못했다는 의미였다.


collectstatic을 수행하지 않았는지를 생각해봐도 아니였다.


원인

배포시점부터는 static파일들을 직접 관리해주어야한다고 한다. 개발시점에서는 DEBUG=TRUE인경우 django가 static파일들을 알아서 관리해주지만, 배포할때에는 따로 경로를 만들고 해당경로에 static파일들이 위치하도록 해야한다는거다.

http://stackoverflow.com/questions/5836674/why-does-debug-false-setting-make-my-django-static-files-access-fail?rq=1


해결

WhiteNoise를 설치해 해결했다. WhiteNoise는 static파일들을 collectstatics 명령수행시 지정경로에 파일들을 모아주는 역할을 한다.

http://whitenoise.evans.io/en/stable/django.html


pip install whitenoise


settings.py

STATIC_URL = '/staticfiles/'

STATIC_ROOT = os.path.join(BASE_DIR, "staticfiles")

STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'



[출처] https://zeallat.wordpress.com/2017/04/21/django%EC%97%90%EC%84%9C-whitenoise-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/

'Sundry > Python' 카테고리의 다른 글

json encode decode 예제  (0) 2018.12.14
django-widget-tweaks  (0) 2018.12.03
How to Render Django Form Manually  (0) 2018.12.02
월 - 월 계산하기  (0) 2018.11.12
bdist_wheel error  (0) 2018.11.12