-
카테고리
-
세부 분야
풀스택
-
해결 여부
해결됨
Server Error (500) 에러가 여전히 뜨네요
22.12.30 16:25 작성 조회수 1.4k
0
쉘로 접속해서 migrate까지 완료했고 showmigrations로 확인까지 했는데 왜 500 에러가 뜨는걸까요??
답변을 작성해보세요.
0
이진석
지식공유자2022.12.30
500 페이지만 봐서는 그 원인을 절대 파악할 수 없습니다.
일단 settings 내의 DEBUG 옵션을 True로 켜시고, 다시 접속해보시면 오류내역이 웹페이지에 보여질 테니, 에러 로그를 통해 오류 원인을 파악해보실 수 있겠구요.
혹은 실서비스 운영에서는 에러로깅을 해주는 sentry.io 서비스를 장고에 설정하여, 장고에서의 오류내역을 sentry 측에 기록하여 확인하는 방법을 많이 씁니다.
yezi9733
질문자2022.12.30
Internal Server Error: /admin/login/
Traceback (most recent call last):
File "/usr/lib/python3.10/zoneinfo/_common.py", line 12, in load_tzdata
return importlib.resources.open_binary(package_name, resource_name)
File "/usr/lib/python3.10/importlib/resources.py", line 43, in open_binary
package = _common.get_package(package)
File "/usr/lib/python3.10/importlib/_common.py", line 66, in get_package
resolved = resolve(package)
File "/usr/lib/python3.10/importlib/_common.py", line 57, in resolve
return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand)
File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 992, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 992, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 1004, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'tzdata'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/django/core/handlers/exception.py", line 55, in inner
response = get_response(request)
File "/usr/local/lib/python3.10/dist-packages/django/core/handlers/base.py", line 220, in _get_response
response = response.render()
File "/usr/local/lib/python3.10/dist-packages/django/template/response.py", line 114, in render
self.content = self.rendered_content
File "/usr/local/lib/python3.10/dist-packages/django/template/response.py", line 92, in rendered_content
return template.render(context, self._request)
File "/usr/local/lib/python3.10/dist-packages/django/template/backends/django.py", line 62, in render
return self.template.render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/usr/local/lib/python3.10/dist-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
File "/usr/local/lib/python3.10/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
File "/usr/local/lib/python3.10/dist-packages/django/template/defaulttags.py", line 389, in render
tzinfo = timezone.get_current_timezone() if settings.USE_TZ else None
File "/usr/local/lib/python3.10/dist-packages/django/utils/timezone.py", line 96, in get_current_timezone
return getattr(_active, "value", get_default_timezone())
File "/usr/local/lib/python3.10/dist-packages/django/utils/timezone.py", line 82, in get_default_timezone
return zoneinfo.ZoneInfo(settings.TIME_ZONE)
File "/usr/lib/python3.10/zoneinfo/_common.py", line 24, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key asia/seoul'
[2022-12-30 07:33:47 +0000] [1] [INFO] Handling signal: winch
터미널에서 뜨는 에러내역은 이렇습니다!
DEBUG=True 해놓았지만 오류내역대신 Server Error (500)가 표시되는건 여전하네요
이진석
지식공유자2022.12.30
settings 내 TIME_ZONE 문자열을 "asia/seoul"이 아니라 "Asia/Seoul" 로 고쳐보시고,
리눅스는 파일/폴더에 대한 대소문자 구별을 합니다. 윈도우/맥은 대소문자 구별을 하지 않지만요.
혹시 해결되지 않는다면, tzdata 라이브러리가 없다는 오류가 있는 데, tzdata 라이브러리도 설치해보세요.
yezi9733
질문자2022.12.30
tzdata추가후 Asian/Seoul로 고쳤더니 500에러는 사라졌습니다만 해당오류가 뜹니다.
404가 뜨는것을보니 불러오는것을 실패한것 같은데 왜인지 모르겠습니다...
이진석
지식공유자2022.12.30
장고 개발서버 로컬에서의 정적파일 서빙은 python manage.py runserver 서버에서 DEBUG=True 일 때에만 정적서빙이 이뤄집니다. python manage.py runserver를 사용하지 않거나, DEBUG=False 상황에서는 정적파일 서비스가 이뤄지지 않습니다. 해당 요청을 처리하는 기능이 비활성화됩니다.
gunicorn을 사용하시는 상황이라면, DEBUG=True 이더라도 정적파일 서빙을 하지 않습니다. // azure storage로 복사한 것과 별개로 현재의 장고 프로젝트가 애저 스토리지를 바라보고 있어야 합니다. settings.prod 에 애저 스토리지 설정을 해두셨다면 settings.prod 설정을 활성화시키셔야 애저 스토리지에 대한 정적 파일 서빙 기능이 활성화될 것입니다.
yezi9733
질문자2022.12.30
네 혹시나 해서 집와서 확인해보니 실수가 하나있었습니다
tzdata
pytz
두개를 인스톨해주고 환경변수 azure 설정한부분을 문자열로 입력해보고 실행해본결과 제대로 놔와서 다시 확인해봤더니 환경변수 설정하는곳에서 KEY가 조금 짤려있었더라고요.
타임존 오류랑 합쳐지니 확인도 잘 못해보구 강사님 덕분에 오늘도 좋은 지식들 알아갑니다!!
답변 1