아래 포스트 글 “카카오톡,페이스북 og:image 캐시 삭제” 을 작성하다가 facebook for developers 에서 디버그 버튼을 눌렀는데 해결해야 하는 경고 내역으로 다음과 같은 항목이 출력됐다.
- SSL Error : Can’t validate SSL Certificate. Either it is self-signed (which will cause browser warnings) or it is invalid.
- cURL 오류 : cURL 오류: 60 (SSL_CACERT)
- 추정된 속성 : ‘og:image’ 속성은 다른 태그에서 추정할 수 있는 값이더라도 명확하게 입력해야 합니다.
- 자산 누락됨다음 필수 자산이 누락되었습니다: og:url, og:type, og:title, og:image, og:description, fb:app_id
SSL 인증서를 검증할 수 없음. 자체 서명되었거나(브라우저 경고가 발생함) 유효하지 않은 경우. 라고 SSL 인증서에 에러가 내고 있었다. https로 접근이 되서 문제가 없는 줄 알았더니 아래 웹페이지를 읽고 체인 인증서 적용에 문제가 있음을 확인했다.
https://wordpress.org/support/topic/facebook-cannot-verify-my-ssl-certificate/
체인 인증서(Chain Cert)
아래는 체인 인증서 테스트를 할 수 있는 사이트이고 여기서 테스트 해보았는데 문제가 있음을 확인했고 했다. 이 사이트에서 체인 인증서에 대해서 이렇게 설명하고 있다.
SSL인증서를 설치할 때 사이트의 인증서뿐만 아니라 하나 이상의 중간(체인이라고 함)인증서도 설치해야 한다. 올바른 체인을 설치하지 않으면 브라우저에서 인증서 오류가 발생하여 방문자가 사이트를 방문하지 못할 수 있다고 말한다.
해결방법
저는 인증서를 gogetssl 에서 받았는데 인증서를 다운 받을 때 3가지 파일을 준다. 그때 3가지 파일을 합치지 않고 하나의 파일만 인증서로 적용해서 문제가 발생했다. 아래는 gogetssl 에서 받은 인증서 파일이다. markettraders_kr.crt 파일에 UserTrust_RSQ_Certification_Authority.crt, AAA_Certificate_Services.crt 순서로 파일을 합쳐서 사용하니 SSL Error 문제가 해결됐다.
테스트 할 수 있는 사이트(https://whatsmychaincert.com/) 에서도 정상적으로 동작하는 것을 확인했고 facebook for developers 해결해야 하는 경고도 없어진 것을 확인했다.