안녕하세요 선생님4-09,4-11 서버 관리자 질문입니다.
안녕하세요 선생님, 부트스트랩 파일 경로를 찾지 못하는 문제 때문에
선생님께서 처음부터 따라하시길 권유했지만, 여기까지 온것이 너무 아까워서
완독하고 나서 처음부터 다시 하려고 합니다.
그런 와중에 4-09, 4-11에서 문제가 발생했습니다.
4-09) 부분에서 구니콘으로 서버를 돌렸을때 문제.
gunicorn --bind 0:8000 config.wsgi:application
했을때 처음에는
Django: ImproperlyConfigured: The SECRET_KEY setting must not be empty
에러가 발생해서
wsgi.py파일에서
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings.prod')
이렇게 수정을 해주었더니 잘 돌아갔습니다.
하지만 선생님의 경우에는 구니콘이 정적 파일을 처리하지 못하고 동적 페이징 요청 처리만 가능한 웹브라우저가 표시되었지만
제 웹브라우저는 정적파일들까지도 표현이 되어 있었습니다.
이 부분의 경우는 어떻게 해야하나요?
4-11) 부분에서 슈퍼유저 생성과정에서 문제가 생겼습니다.
가상환경에서 슈퍼유저를 생성하려고 책에 나와 있는 코드를 따라서 작성했습니다.
python manage.py createsuperuser
근데 밑에와 같이 오류가 발생했습니다.
Traceback (most recent call last):
File "/home/ubuntu/venvs/mysite/lib/python3.8/site-packages/django/core/mana
gement/__init__.py", line 224, in fetch_command
app_name = commands[subcommand]
KeyError: 'createsuperuser'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "manage.py", line 22, in <module>
main()
File "manage.py", line 18, in main
execute_from_command_line(sys.argv)
File "/home/ubuntu/venvs/mysite/lib/python3.8/site-packages/django/core/mana
gement/__init__.py", line 401, in execute_from_command_line
utility.execute()
File "/home/ubuntu/venvs/mysite/lib/python3.8/site-packages/django/core/mana
gement/__init__.py", line 395, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/ubuntu/venvs/mysite/lib/python3.8/site-packages/django/core/mana
gement/__init__.py", line 231, in fetch_command
settings.INSTALLED_APPS
File "/home/ubuntu/venvs/mysite/lib/python3.8/site-packages/django/conf/__in
it__.py", line 83, in __getattr__
self._setup(name)
File "/home/ubuntu/venvs/mysite/lib/python3.8/site-packages/django/conf/__in
it__.py", line 70, in _setup
self._wrapped = Settings(settings_module)
File "/home/ubuntu/venvs/mysite/lib/python3.8/site-packages/django/conf/__in
it__.py", line 196, in __init__
raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not b
e empty.
base.py에 이미 SECRET_KEY 존재하고 있습니다.
그래서 혹여나 local.py,prod.py에서 SECRET_KEY을 인식 못하는 건가 라고 생각해서 각 각의 파일에 SECRET_KEY 을 복사붙혀넣기 해봐도 똑같은 문제가 발생했습니다.
이런 부분은 어떻게 하면 좋을까요?
qwefghnm1212 님 636
M 2022년 1월 20일 7:47 오후
1개의 답변이 있습니다. 1 / 1 Page
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings.prod')
위와 같이 설정할 경우에는 wsgi.py 파일이 실행되는 순간에만 설정이 되기 때문에 python manage.py 실행할 때에는 환경변수가 적용되지 않습니다. 따라서 책에 안내하는 것과 동일한 방법으로 환경변수를 설정해 주시기 바랍니다.
박응용 님
2022년 1월 20일 10:01 오후