서론
많은 웹사이트에서 HTTP를 사용하지만, 2014년에 Google은 사이트를 HTTPS로 전환할 것을 권장했다. 그 전까지는 전자 상거래 페이지가 있는 사이트만 HTTPS를 사용하곤 했다.
전환에 대한 인센티브로 Google은 HTTPS 사이트에 약간의 순위 상승을 제공할 것이라고 발표했다. 사실상 HTTP 사이트보다 HTTPS로 전환한 사이트가 경쟁에서 우위를 차지하게 된다.
이제 HTTPS로 전환하는 것이 왜 그렇게 중요한지 궁금할 것이다. 번거로움을 무릅쓰고 HTTPS로 전환하는데 그만큼의 가치가 있을까? HTTP와 HTTPS의 차이점은 무엇일까?
HTTP, HTTPS의 기본 개념
HTTP란?
HTTP(HyperText Transfer Protocol)는 하이퍼텍스트 전송 프로토콜을 의미한다. 가장 기본적으로 서로 다른 시스템 간의 통신을 허용한다. 사용자가 웹페이지를 볼 수 있도록 웹 서버에서 브라우저로 데이터를 전송하는데 가장 일반적으로 사용된다. 기본적으로 모든 초기 웹 사이트에 사용된 프로토콜이다.
HTTPS란?
HTTPS는 HyperText Transfer Protocol Secure의 약자이다. 일반 HTTP 프로토콜의 문제점은 서버에서 브라우저로 흐르는 정보가 암호화되지 않아 쉽게 도용될 수 있다는 것이다. HTTPS 프로토콜은 SSL(Secure Sockets Layer) 인증서를 사용하여 이 문제를 해결한다. 이 인증서는 서버와 브라우저 간에 암호화된 보안 연결을 생성하여 서버와 브라우저 간에 전송될 때 잠재적으로 민감한 정보가 도난당하지 않도록 보호한다.
HTTP와 HTTPS의 주요 차이점은 무엇인가?
두 프로토콜의 가장 중요한 차이점은 SSL 인증서이다. 사실 HTTPS는 기본적으로 추가 보안이 있는 HTTP프로토콜이다. 그러나 이 추가 보안은 특히 '신용카드 정보 및 비밀번호'와 같은 민감한 데이터를 사용자로부터 가져오는 웹사이트 경우 매우 중요할 수 있다.
HTTPS는 어떻게 작동할까? SSL 인증서는 사용자가 사이트에 제공하는 정보를 암호화하여 기본적으로 데이터를 코드로 변환한다. 발신자와 수신자 간에 통신 중인 데이터를 누군가가 훔쳐도 이 암호화로 인해 데이터를 이해할 수 없다.
그러나 HTTPS는 추가 보안 계층 외에도 TLS(Transport Layer Security) 프로토콜을 통해 보호된다. TLS는 데이터의 수정 또는 손상을 방지하는 데 도움이 되는, 데이터 무결성 및 사용자가 의도한 웹 사이트와 통신 중임을 증명하는 인증 기능을 제공한다.
사용자는 웹 주소로 사이트가 HTTPS 프로토콜을 사용하는지 여부를 식별할 수 있다. 웹 주소의 맨 처음 부분은 사이트가 HTTP 또는 HTTPS 프로토콜을 사용하는지 여부를 나타낸다.
요약하자면 HTTP와 HTTPS의 차이점은 단순히 SSL 인증서가 있다는 것이다. HTTP에는 SSL이 없고 HTTPS에는 SSL이 있다. SSL은 연결을 보호하기 위해 정보를 암호화한다. HTTPS에는 HTTP에 없는 TLS(Transport Layer Security) 프로토콜도 있다. HTTPS는 HTTP보다 더 안전하다.
HTTP와 HTTPS 중 어느 것이 더 나은가?
HTTP와 HTTPS의 주요 차이점을 살펴보면 HTTPS는 분명히 큰 이점이 있다. 결국, 사이트가 가능한 안전하기를 원하지 않는가. 만약 전자 상거래 페이지가 없고 웹사이트 방문자들로부터 잠재적으로 중요한 정보를 받지 않는다면, HTTPS 사이트로 전환하는 것이 그렇게 필요하지 않고, 전환하는 번거로움이 전환했을 때 얻을 수 있는 가치보다 크다고 생각할 수도 있다.
웹사이트 순위 높히기
SEO(검색 엔진 최적화)에게 HTTPS는 중요하다.
서론에서 말한 Goggle의 HTTPS 인센티브(HTTPS 사이트 순위를 HTTP사이트보다 좀 더 상승시킬 것) 이외에도 방문자가 자신이 알고 있는 사이트를 탐색할 가능성이 더 높기 때문에 결론적으로 웹사이트의 순위가 상승할 수 있다.
Referrer Data 보존
또한 HTTPS 사이트를 사용하면 Google Analytics가 더욱 효과적이다. 이는 사용자를 참조한 웹 사이트의 보안 데이터가 HTTP 사이트가 아닌 HTTPS를 사용하여 저장되기 때문이다. HTTP 사이트에서는 조회 소스가 "직접 트래픽"으로 표시된다. 따라서 HTTPS는 SEO 자체에서 큰 이점을 제공한다.
방문자와 신뢰 구축
HTTPS 사이트는 모든 통신을 암호화하기 때문에 방문자는 비밀번호 및 신용카드 정보와 같은 민감한 정보뿐만 아니라 검색 기록도 보호할 수 있다. 고객이 사이트를 탐색하는 동안 개인정보를 유지하고, 다운로드, 가입 또는 구입하는 모든 것이 보안 부족으로 인해 고객을 위험에 빠뜨리지 않는다는 사실을 알면 잠재 고객을 확보하고 판매를 종료하는데 필수적인 신뢰를 쌓는데 도움이 될 것이다.
또한 HTTPS는 보안 침해로부터 사이트를 보호하여 사용자의 평판을 손상시키고 비용이 발생할 수도 있다.
AMP 페이지 생성 자격
AMP(Accelerated Mobile Pages)를 사용하려면 HTTPS가 있어야한다.
AMP는 훨씬 빠른 속도로 휴대기기에 콘텐츠를 로드하는 방법으로 Google에서 만들었다. 기본적으로 AMP는 제거된 HTML과 비슷하다. AMP 콘텐츠를 스마트폰 및 태블릿 사용자에게 더 나은 모바일 경험을 제공하기 우해 Google의 SERP에 눈에 띄게 표시된다.
모바일 친화적 웹사이트를 만드는 것이 중요하다면(모바일 검색 순위 및 로컬 SEO의 중요성이 점점 더 커지고 있음을 고려할 때 그렇게 해야하는 경우) HTTPS로 전환하는 것은 필수이다.
HTTPS로 전환할 때의 SEO 문제
HTTP에서 HTTPS로 전환하면 많은 이점이 있지만 여전히 몇 가지 전환할 때 발생할 수 있는 잠재적인 문제가 있다. 다음은 잠재적인 SEO 관련 문제를 방지하기 위해 HTTPS로 전환할 때 명심해야하는 몇 가지 사항이다.
- HTTP에서 HTTPS로 전환했음을 Google에 알린다.
- 사이트를 전환했을 때 알려주는 일종의 자동 알림이 없다. 즉, 사이트를 다시 크롤링할 때까지 약속한 순위 상승이 일어나지 않을 수 있다. 따라서, 직접 알리지 않으면 시간이 걸릴 수 있다.
- SSL 인증서 외에 여러 인증서가 있다.
- 여기에는 단일 도메인, 다중 도메인 및 와일드 카드 SSL 인증서가 포함된다. 단일 도메인 인증서는 하나의 도메인 또는 하위 도메인에 대해 발급된다. 통합 커뮤니케이션 인증서라고도 하는 다중 도메인 인증서를 사용하면 기본 도메인 이름과 99개 이상의 추가 주체 대체 이름을 보호할 수 있다. 와일드 카드 인증서를 사용하면 웹사이트 URL과 무제한 하위 도메인을 보호할 수 있다.
- 모든 리소스에 대해 상대 URL을 사용해야 한다.
- 이것은 다른 모든 도메인에 대해 동일한 보안 도메인 및 프로토콜 상대 URL에 상주하기 위한 것이다.
- Google이 HTTPS 사이트를 크롤링하는 것을 막고 있지 않은지 확인하라.
- 그들이 사이트의 robots.txt에 액세스할 수 없는 경우 사이트 크롤링에 대한 명확한 지침을 얻기 위해, 그것은 결국 사이트의 SEO를 향상시키는 능려에 손상을 줄 수 있고, 사이트의 잠재적인 검색 순위에 손상을 줄 수 있다. 일반적으로 봇을 허용하도록 테스트 서버를 업데이트하는 것을 잊었을 때 발생한다.
- 검색 엔진이 페이지를 색인화할 수 있도록 허용해야 한다.
- 검색 엔진이 이렇게 하지 않도록 하는 옵션이 있지만 페이지 순위가 지워지기 때문에 SEO 노력이 손상될 수 있으며 다시 회복하는데 시간이 걸릴 수 있다.
- HTTP에서 HTTPS로의 마이그레이션 추적에 주의하라.
- 모든 것이 원활하게 진행되도록 Google 웹마스터 도구 및 기타 분석 소프트웨어를 사용하여 이를 수행할 수 있다. 또한 문제가 SEO를 해치지 않도록 가능한 한 빨리 문제를 파악하는 데 유용하다.
HTTP에서 HTTPS로 변경하는 과정
HTTPS로 전환하는 방법은 무엇인가?
이제 HTTPS로 전환할 때의 이점과 마이그레이션 중 문제를 방지하는 방법을 이해했으므로 실제로 HTTP에서 HTTPS로 전환하는 방법을 알아보자. HTTPS로 전환하는 프로세스는 여러 단계를 거쳐야할 수 있지만 전반적으로 어렵지는 않다. 단지 약간의 시간이 소요될 뿐이다. 다음은 HTTPS로 전환하기 위해 수행해야하는 단계이다.
- 필요한 SSL 인증서 유형을 결정한 다음 호스팅 회사에서 구매한다.
- 사이트의 호스팅 계정에 SSL 인증서 설치 및 구성한다.
- 아무 잘못이 없어도 항상 준비해야 한다. 다시 되돌려야 하는 경우에 대비하여 웹사이트의 전체 백업을 수행하자.
- 엔트리 웹사이트를 통해 http에서 https로 하드 내부 링크를 업데이트하라. 사이트 맵도 업데이트해야 한다.
- 템플릿을 검토하고 스크립트 및 이미지에 대한 참조도 업데이트한다.
- 업데이트된 사이트 맵을 포함하기 때문에 robots.txt을 업데이트 해야한다.
- 사이트 전체에서 사용되는 자바스크립트 및 타사 플러그인을 포함한 모든 코드 라이브러리를 업데이트해야한다. 이것은 어떤 것도 깨지지않고 어떤 것도 안전하지 않은 내용을 포함하지 않는다는 것을 보장한다.
- 디렉터리 목록의 링크와 같이 사용자가 제어하는 사이트에 대한 외부 링크를 통해 HTTPS로 변경한다.
- CDN(Content Delivery Network) SSL 설정을 업데이트한다.
- 이메일 링크를 포함하여 마케팅 자동화 도구에서 사용하는 모든 링크를 업데이트한다.
- 랜딩 페이지와 유료 검색 링크를 모두 살펴보고 HTTPS로 업데이트하라.
- 손상된 리디렉션이나 리디렉션 체인을 찾아서 업데이트하려면 Scriming Frog와 같은 도구를 사용하여 이전 URL을 탐색해야 한다.
- 사이트 전체에 페이지별로 301개의 리디렉션을 구현해야 한다. 이렇게 하면 방문자가 새 페이지로 리디렉션될 때 새 HTTPS가 링크를 계속 전달받을 수 있으므로 SEO 작업을 유지할 수 있다.
- 아직 유효한 이전 리디렉션을 업데이트하는 것을 잊지마라.
- HSTS를 활성화하면 브라우저에 HTTPS를 향상 사용하도록 지시한다.
- OCSP 스테이플링을 사용 가능으로 설정하면 서버가 브라우저 대신 보안 인증서가 해지되었는지 여부를 식별할 수 있으므로 브라우저가 인증서를 발급한 기관과 다운로드하거나 상호참조할 필요가 없다.
참고자료 :
'FrontEnd' 카테고리의 다른 글
검색 엔진 최적화(Search Engine Optimization) (0) | 2021.09.30 |
---|---|
CDN(Content Delivery Network)이란? (0) | 2021.09.23 |
HTTP(Hyper Text Transfer Protocol)이란? (0) | 2021.09.19 |
SSR(Server Side Rendering) vs CSR(client Side Rendering) (0) | 2021.09.18 |
[Django] Django 이용해 Web 개발하기 2 - Django App (0) | 2021.01.31 |
댓글