문제 상황 

  • 프론트엔드와 WebRTC를 테스트하는데 계속해서 위와 같은 에러가 떴다.
  • 백엔드 서버는 https:// 를 사용하고 있고, 프론트엔드는 http:// local 서버를 사용하는 상황
  • 채팅방에 클라이언트가 입장하면 해당 클라이언트 세션아이디를 Redis DB에 저장해주고 있다.
  • 처음 같은 채팅방에 다른 두 클라이언트가 들어가면 시그널링은 성공하는데, 둘 중 한명이 나가면 Redis DB에 그 방에 남아있는 사람들의 정보까지도 나랄가 버린다.... 와이 ... ? 
  • 근데 백엔드 서버와 프론트엔드서버 모두 로컬인 http://를 사용할때는 해당 에러가 없다 ! 

 

추측 원인

  • 테스트중인 소스의 signal 서버 프로토콜이 https인데 거기에 접속하는 페이지는 http 여서 발생하는 문제
  • 크롬37버전이상부터 http로는 미디어스트림을 얻을 수 없다.(getUsermedia 사용불가) 시그널 서버가 http건 https건 상관 없지만 getUsermedia를 사용하는 클라이언트가 https가아니면 사용 불가능 하다고 한다.

 

오늘은 시간이 늦어서 내일 프론트엔드 서버를 https://로 배포하면 다시 맞춰보는 걸로 ! 

 

추가

글 쓴 다음날 프론트엔드 서버를 https:// 로 바꿔 백엔드 서버와 똑같이 맞춰준 뒤 실험을 했지만 여전히 같은 에러가 발생한다.

왜일까 ...? ㅠ ㅠ WebRTC 정말 어렵다 ...!

해결하는대로 업데이트 하겠습니다 ㅠ ! 

 

--> 수정 ! 해결이 되었습니다 !! 원인과 해결방법은 아래 링크 참조해 주세요 : ) 

 

[13] 트러블 슈팅 : HTTPS 배포 유의사항

 

[13] 트러블 슈팅 : HTTPS 배포 유의사항

문제 상황 생각보다 WebRTC 시그널링 연결이 오래 걸렸는데, http인 로컬 서버로만 했을 때는 문제없던 기능들이 https 서버로 환경을 바꿔주었더니 틈만나면 아래와 같은 에러 혹은 403, 404, 405에러,

leejincha.tistory.com


[ 참고 자료 ]

+ Recent posts