내가 해결한 오류들

.env 파일에 http~ 로 로컬 서버 주소 설정했는데 자꾸 https로 api 통신되는 문제

홍구리당당 2024. 7. 4. 10:28

1줄 결론: meta http-equiv='Content-Security-Policy" ... 이 설정 빼세요.

 

----

next js 프론트엔드 프로젝트 폴더에서 .env 파일에 

NEXT_PUBLIC_SERVER_ADDRESS = 'http://192.111.3.11:3000/' 이렇게 주소를 정하고 api 통신을 하는데 자꾸 https://192... 로 통신이 날아가는 문제가 생겼다.

 

이전에 상용서버(https:// ,,, ) 로 쿼리 날리던 게 캐싱돼서 덮어쓰이는 건가 싶었지만, 그건 아녔다. 그냥 진짜 내 환경변수의 http가 https로 변경되는 것이었다.

 

챗지피티한테 왜 그런지 물어봤더니...

 

아하!! 보안 문제때문에 https로 자동으로 바꿔준단 거군 -> 근데 30분동안 끙끙대며 다 해봤는데 안 고쳐졌다..

챗지피티를 끄고 다시 서치해봤다. next.js http to https.. 이런 식으로. 그렇지만 전혀 해결이 안됐다.

이게 뭐지, 왜 이러지 한참 고민하다 우연히 찾은 글에는, axios가 http를 https로 바꿔준단 것이었다.

그래서 axios change http to https 라고 검색했고, 그 결과 답이 나왔다!!! 

<meta
          http-equiv="Content-Security-Policy"
          content="upgrade-insecure-requests"
        />

위의 설정이 아마 붙어있었을 것이다. 이게... 왜 내가 이 문구를 추가했더라? 아마 뭔 CORS 에러가 떠서 추가했던 걸로 기억하는데.. 하여간 이거 때문에 http가 https로 강제 형변환(?) 됐던 것이다.

삭제하면 된다!!