robots.txt 파일을 제대로 설정했는데도 구글이 차단된 페이지를 자꾸 크롤링한다거나, 검색 결과에 떠야 할 페이지가 안 나타나는 경험을 해본 적 있을까. 대부분의 웹 개발자들은 robots.txt를 단순한 텍스트 파일 정도로 생각해서 규칙을 써놓고 끝낸다. 다만 검색 엔진이 실제로 그 지시를 따르지 않는 경우가 상당히 많다는 걸 모르는 경우가 많다. ···
검색 결과 페이지를 보면 사이트 제목 아래 회색 텍스트로 2~3줄 정도의 설명이 나타난다. 바로 메타 설명(Meta Description)이다. 이 짧은 텍스트가 사용자의 클릭 여부를 크게 좌우하는데, 많은 개발자들은 이걸 제대로 설정하지 않거나 검색 엔진이 임의로 생성하도록 방치한다. 구글이 자동으로 뽑은 설명은 맥락과 맞지 않아 클릭률을 떨어뜨리는 주요···
검색엔진에 당신의 사이트 구조를 제대로 알려주지 못해 페이지가 색인되지 않는 경험을 했을까? 많은 개발자들이 콘텐츠만 잘 만들면 자동으로 검색 결과에 나타날 거라고 생각한다. 하지만 구글이나 네이버는 당신의 사이트 지도를 받아야 모든 페이지를 효율적으로 크롤링할 수 있다. XML 사이트맵은 검색엔진에게 당신의 웹사이트에 어떤 페이지들이 있는지, 언제 마지막···
검색 결과에서 사이트 순위가 갑자기 떨어지거나, Google Search Console에서 "페이지 경험" 점수가 빨간 경고로 표시되는 경험을 해봤을까. 다만 대부분의 개발자들은 Core Web Vitals가 정확히 뭔지, 어떤 지표를 봐야 하는지, 실제로 코드에서 뭘 고쳐야 하는지 전혀 모른 채 검색 결과에서 가져온 추상적인 최적화 팁만 따라 한다. 이번···
개발자라면 구글 Search Console에서 Core Web Vitals 지표가 '나쁨' 상태로 떨어진 적 있을까. 사용자는 여전히 사이트를 이용하는데 갑자기 검색 순위가 밀려나가고, 모바일 트래픽이 뚝 떨어진다. 다만 대부분의 개발자들은 Core Web Vitals가 정확히 뭔지, 어떤 지표가 얼마나 떨어졌는지, 왜 개선되지 않는지 제대로 모른 채로 우···
검색엔진 최적화를 하면서 가장 답답한 부분은 뭘까. 매일 Google Search Console에 들어가서 수동으로 순위를 확인하는 것이다. 특히 관리하는 키워드가 100개를 넘어가면 손으로 일일이 체크하기는 불가능하다. 다만 대부분의 개발자들은 Search Console이 UI를 제공할 뿐 API를 통한 자동화가 가능하다는 걸 모르거나, 알아도 구글 AP···
구글 Search Console을 점검하다가 색인 생성 보류 목록에서 '발견됨 - 현재 색인 생성되지 않음' 문구를 보고 당황한 적이 있을 것이다. 사이트맵을 정상 등록했고 URL도 올바르게 생성되었는데 구글이 페이지를 가져가지도 않는 상황이다.다만 대부분의 개발자나 웹마스터는 이 에러 메시지가 의미하는 정확한 원인과 크롤링 작동 원리를 모른 채 무작정 색···
웹 서비스를 운영하다 보면 동일한 콘텐츠가 여러 URL 경로로 접속되는 경우를 흔히 경험해봤을 것이다. 도메인 앞의 www 유무, HTTP와 HTTPS의 접속 혼용, 또는 쇼핑몰 상품 리스트의 정렬 파라미터(?sort=price_asc) 때문에 완전히 같은 내용의 페이지인데도 주소가 수십 개로 갈라지곤 한다. 문제는 검색엔진 크롤러가 이 주소들을 각각 서로···
검색 결과 페이지(SERP)에서 경쟁사 웹사이트는 '홈 > 블로그 > 백엔드'처럼 깔끔한 탐색 경로가 표시되는데, 내 사이트는 볼품없는 복잡한 URL 문자열 그대로 노출되어 답답했던 경험이 있을 것이다. 다만 대부분의 개발자들은 이를 검색엔진 알고리즘의 무작위 선택으로 치부하고 넘어가거나, 검색 로봇에게 정확한 카테고리 구조를 전달하는 방법을 모르는 경우가···
Google과 Bing에 사이트를 등록하는 건 많이 다루지만, 중국 시장을 노리는 개발자들이 놓치는 게 있다. 바로 Baidu 검색 엔진이다. 중국 내 검색 시장 점유율이 압도적인데도 대부분의 한국 개발자는 Baidu Webmaster Tools 존재 자체를 모르거나, 등록 과정이 복잡할 거라 생각해서 건너뛴다. 실제로 Baidu 검색 노출은 Google ···
검색 엔진이 사이트맵을 크롤링할 때 페이지의 수정 시간을 잘못 인식하면, 검색 결과에 엉뚱한 날짜가 표시되거나 오래된 콘텐츠로 판단되어 순위가 떨어진다. 대부분의 개발자들은 사이트맵에 lastmod 태그를 넣기만 하면 끝이라고 생각하지만, 실제로는 파일의 물리적 수정 시간, HTTP Last-Modified 헤더, 그리고 데이터베이스의 업데이트 시간까지 모···
많은 개발자와 마케터들이 Google Search Console에만 집중하느라 Bing 검색 엔진을 놓친다. 다만 Bing은 전 세계 검색량의 약 3~5%를 차지하고 있고, 특히 기업 사용자와 Windows 통합 검색에서 여전히 중요한 역할을 한다. 게다가 검색 노출 설정 방식이 Google과 다르기 때문에 제대로 알지 못하면 Bing에서는 아예 색인되지 ···
구글 서치 콘솔을 확인해보니 모바일에서는 검색 노출이 잘 되는데 PC에서는 떨어져 있다거나, 반대 상황을 경험해봤을까? 혹은 구글에서 보낸 알림메일에 "Mobile-First Indexing" 같은 낯선 용어가 나와서 막막했던 경험이 있을까? 대부분의 웹 개발자와 SEO 담당자들은 이게 정확히 뭔지, 왜 신경 써야 하는지, 어떻게 대비해야 하는지 모른 채로···
검색 엔진에서 자신의 웹사이트가 어떤 키워드로 몇 위에 나타나는지 알아야 SEO 전략을 세울 수 있다. 다만 Google Search Console의 웹 인터페이스에서 수동으로 확인하다 보면 시간이 너무 오래 걸리고, 매달 순위 변동을 추적하기도 어렵다. 이번에는 Google Search Console API를 PHP에서 직접 연동해서 검색 순위와 클릭수,···
웹사이트에 열심히 고화질 이미지를 배치해 두었지만, 구글이나 네이버 이미지 검색 엔진에 수개월째 단 한 건도 노출되지 않는 문제를 경험해봤을까?다만 대다수의 개발자나 운영자들은 태그의 alt 속성을 빈값으로 내버려두거나 IMG_001.jpg 같은 의미 없는 파일명을 그대로 사용하는 경우가 많다.이번에는 이미지 크롤러가 콘텐츠를 수집하는 정확한 원리부터, ···
검색 엔진에서 일반 검색 결과 맨 위에 떠있는 회색 박스를 본 적이 있을까? "사과의 원산지는?", "PHP 버전 확인하는 방법은?" 같은 질문에 대해 웹사이트의 일부 내용이 박스에 들어가 있는 걸 말한다. 이게 바로 Featured Snippet(추천 스니펫)인데, 대부분의 개발자와 운영진들은 이게 왜 나타나는지, 어떻게 최적화하는지 모른 채 넘어간다.다···
검색 엔진 최적화를 한다면서 robots.txt와 sitemap.xml의 차이를 정확히 모르고 설정하는 개발자들이 많다. 둘 다 SEO와 크롤링 제어에 필수적이지만, 역할이 완전히 다르다는 걸 모르는 경우가 대부분이다. 심하면 한쪽만 설정하거나, 둘의 설정이 충돌해서 중요한 페이지가 검색 결과에서 누락되는 사태까지 벌어진다. 이번에는 robots.txt와 ···
다국어 웹사이트를 개발하여 한국어, 영어, 일본어 등 언어별 페이지를 제공하고 있는데 구글 검색 결과에서 한국어 사용자에게 영문 페이지가 노출되거나, 중복 콘텐츠로 분류되어 인덱싱이 누락되는 현상을 경험해봤을 것이다.다만 대부분의 개발자들은 단순히 언어별 URL 구조(/ko/, /en/)만 나눠놓으면 검색엔진이 알아서 사용자의 국가에 맞춰 보여줄 것이라고 ···