본문 바로가기

트러블 슈팅/Vue

LightHouse Syntax not understood error

1. 문제 발생

LightHouse에서 SEO지수가 매우 낮게 나와서 원인을 살펴보니, Syntax not understood 등 여러 error가 나와있는 모습을 확인 할 수 있었다.
왜 이런 오류가 나왔을까? 그 이유는 robots.txt를 설정하지 않았기 때문에 유효하지 않다고 나온 것이다. 
robots. txt를 설정 안했을 경우, 아래와 같은 오류가 나오는데 모두 해당되는 오류였다.

  • No user-agent specified
  • Pattern should either be empty, start with "/" or "*"
  • Unknown directive
  • Invalid sitemap URL
  • $ should only be used at the end of the pattern

2. robots .txt란?

검색엔진에 사이트 및 웹페이지를 수집할 수 있도록 허용하거나 제한하는 국제 권고안이라고 할 수 있다.

3. robots.txt  설정 위치

  •  루트 디렉터리에 위치해 있어야한다.
  •  vue의 경우 root에서 public 디렉토리 안에 robots.txt 파일을 만들었다.

4. robots.txt 설정법

4-1. 다른 검색엔진의 로봇에 대하여 수집을 허용하지 않고 네이버 검색 서비스용 검색로봇만 수집 허용으로 설정합니다.

User-agent: *
Disallow: /
User-agent: Yeti
Allow: /

 

4-2. 모든 검색엔진의 로봇에 대하여 수집 허용으로 설정합니다.

User-agent: *
Disallow: /
Allow: /$

 

4-3.  관리자 페이지, 개인 정보 페이지와 같이 검색로봇 방문을 허용하면 안 되는 웹 페이지는 수집 비허용으로 설정해주세요. 아래 예제는 네이버 검색 서비스용 검색로봇에게 /private-image, /private-video 등은 수집하면 안 된다고 알려줍니다.

User-agent: Yeti
Disallow: /private*/

 

4-4. 모든 검색로봇에게 사이트의 모든 페이지에 대하여 수집을 허용하지 않는다고 알려줍니다. 이 예제는 사이트의 어떠한 페이지도 수집 대상에 포함되지 않으므로 권장하지 않습니다.

User-agent: *
Disallow: /

 

5. robots.txt 타입 별 설명

5-1. User-agent란?

브라우저 유형 및 운영 체제 버전과 같은 정보가 포함된다. 즉, 원하는 브라우저를 이 칸에 설정하면 된다.
만약, *표시할 경우 특정 검색엔진이 아닌 모든 검색엔진에 적용되는 것을 의미한다.

5-2. Disallow란?

웹 페이지 또는 웹 페이지 집합에 액세스하지 않도록 봇에 지시하는 역할을 합니다.
-  하나의 파일을 차단 및 하나의 디렉러티 차단이 가능하다.

Disallow: /learning/bots/what-is-a-bot/


- 전체 엑세스 허용 또는 전체 웹사이트를 검색엔진이 크롤링 할 수 없게 숨길 수 있다.

// 전체 액세스 허용
Disallow: Disallow: /
// 전체 웹 사이트를 봇으로부터 숨기기
Disallow:

5-3.  Allow란?

검색엔진에게 특정 웹 페이지 또는  디렉터리에 액세스할 수 있는 권한이 부여됩니다.

 

참고

 

robots.txt 설정하기

robots.txt는 검색로봇에게 사이트 및 웹페이지를 수집할 수 있도록 허용하거나 제한하는 국제 권고안입니다. IETF에서 2022년 9월에 이에 대한 표준화 문서를 발행하였습니다. robots.txt 파일은 항상

searchadvisor.naver.com

https://www.cloudflare.com/ko-kr/learning/bots/what-is-robots-txt/