배포환경에서 onpenAPI를 못가져오는 문제?
url이 127.0.0.1에서 teulang.shop으로 변경2023/11/22 13:07:30 [error] 12727#12727: *734 open() "/home/ubuntu/final_project_teulang_back/static/rest_framework/js/default.js" failed (2: No such file or directory), client: 172.31.10.140, server: teulang.shop, request: "GET /static/rest_framework/js/default.js HTTP/1.1", host: "teulang.shop", referrer: "https://teulang.shop/articles/fetch-and-save-data/1/10/?format=api"
tail -f /var/log/nginx/error.log 로 확인한 에러 내용포스트맨으로 찍은 것이 나온 건 아닌듯하지만, git clone을 하고 collectstatic 명령어를 입력할때 덮어쓰기 관련 오류 찝찝한 게 마음에 걸리기 시작.
해결방법 검색해보다
settings.py에 STATIC_ROOT 설정 안해준걸 발견.
장고 기본사이트 css만 적용되고 여전히 500 status 에러gunicorn error log
sudo vi venv/lib/python3.10/site-packages/gunicorn/errors.py 로 파악 가능한건가?
직접 설정을 해줘야 에러로그가 찍히는 건지 정확하게는 알지 못하지만 errors.py의 위치는 알고 있으면 좋을 것 같다.리눅스 curl 명령어로
"http://openapi.foodsafetykorea.go.kr/api/{api_key}/COOKRCP01/json/{start}/{end}" 조건을 직접 입력해줘서 url에 접근했더니 json파일을 불러오는 것을 확인했다.남은 것은 정말정말 서버문제 뿐인 것 같은데 어디서 손을 대야 할 지 감이 안 잡힌다.
!!!!
오류를 팀원 분과 진행하는 과정에서 어이없게 해결이 되었다!
포스트맨에서 response 단의 preview에 들어가면 에러 페이지를 미리 보여주는 기능이 있는데, 마음이 급해서 그냥 흰화면이 뜨는줄 알고 넘겼는데, 팀원 분의 말을 듣고 확실히 확인을 했더니
Foreign key 관련 에러 로그가 찍히는 걸 발견했다.
그렇게 생각하니 기본적으로 fetch view에서 id가 1번인 유저의 값이 필드에 들어가서 레시피에 저장이 되는데, 1번 유저를 삭제해서 2번 유저만 존재했기에 발생하는 오류였다.
인스턴스에서 views.py를 수정하고 저장후나가기를 했는데, 바로 적용이 안돼서 nginx랑 gunicorn도 재시작을 해줘야 설정이 바뀐다는 것을 확실히 알게되었다.