robots.txt 파일 변경 사항이 반영되지 않는 문제 해결 방법

Last Updated: 2024년 10월 28일 2개 댓글

네이버 카페에 워드프레스 사이트에서 도메인을 변경하고 robots.txt 파일을 수정했지만 반영되지 않는 문제에 대한 질문이 올라와서 이 문제에 대하여 조금 자세히 살펴보았습니다.

robots.txt 파일 변경 사항이 반영되지 않는 문제는 기본적으로 캐시 때문일 수 있습니다. 캐시에는 여러 가지 캐시가 있습니다. 각 레벨에서 캐시를 삭제하면 보통은 수정 사항이 반영될 것입니다. 하지만 서버 캐시를 비롯하여 캐시를 모두 삭제해도 문제가 해결되지 않는 경우가 있을 수 있습니다.

robots.txt 파일 변경 사항이 반영되지 않는 문제 해결하기

robots.txt 파일에 문제가 발생하는 사이트는 클라우드웨이즈에서 호스팅 중이었고 WP Rocket 캐시 플러그인이 설치되어 있었습니다. 그리고 Sav.com이라는 다소 생소한 업체에서 도메인이 등록되어 있었습니다.

📍 클라우드웨이즈 가입 방법 (+ Cloudways 할인 쿠폰 & 프로모션 코드)

캐시 플러그인에서 robots.txt 파일이 캐싱되지 않도록 설정하기

WP Rocket 플러그인에서 robots.txt 파일이 캐싱되지 않도록 설정할 수 있습니다.

설정 » WP Rocket » Advanced Rules로 이동하여 Never Cache URL(s)에 아래 그림과 같이 입력합니다.

참고로 Cloudways를 이용하는 경우 자체 캐시 플러그인인 Breeze를 사용해도 충분할 수 있습니다. 저는 Breeze만을 사용하여 설정했습니다. Breeze 플러그인을 사용하는 경우에도 비슷한 방법으로 robots.txt 파일이 캐싱되지 않도록 설정할 수 있습니다.

설정 » Breeze » Advanced Options로 이동하여 Never Cache URL(s)에 아래와 같이 입력하면 됩니다.

robots.txt 파일뿐만 아니라 ads.txt 파일, 사이트맵 파일, 피드 URL 등도 추가하면 좋습니다.

서버 레벨에서 캐싱되지 않도록 설정하기

클라우드웨이즈를 이용하는 경우 개별 애플리케이션에서 Varnish 예외 설정을 추가하여 캐싱되지 않도록 설정할 수 있습니다.

Application Settings » Varnish Settings로 이동하고 Add New Exclusion 버튼을 눌러 서버 캐시 예외 규칙을 추가할 수 있습니다.

상기 그림과 같이 예외 규칙을 추가할 수 있습니다.

캐시 지우기

워드프레스 사이트에 설치된 캐시 플러그인에서 캐시를 삭제하여 문제가 해결되는지 체크하도록 합니다.

WP Rocket을 사용하는 경우 상단 툴바의 WP Rocket » Clear Cache를 눌러 캐시를 삭제할 수 있습니다.

Breeze 캐시 플러그인에서는 상단 툴바의 Breeze » Purge All Cache를 눌러 모든 캐시를 제거할 수 있습니다.

이러한 조치에도 해결되지 않으면 사이트 전체 캐시를 삭제해볼 수 있습니다.

상기 조치에도 해결이 안 되는 경우: Cloudflare 문제

문제의 사이트에서는 상기의 모든 조치에도 이상하게 robots.xt 문제가 해결되지 않았습니다.

이 문제에 대하여 구글링하면서 "Robots.txt not updating"이라는 워드프레스 포럼 문서에서 문제를 해결할 수 있는 힌트를 얻었습니다.

클라우드플레어(Cloudflare)에 가입하여 도메인을 연동하여 사용하는 경우 클라우드플레어 캐시를 삭제하여 문제가 해결되는지 체크해보시기 바랍니다.

이외에도 다음과 같은 사항을 추가로 체크할 수 있습니다.

  1. 파일 퍼미션 문제
  2. 플러그인 충돌 문제

네이버 카페에 올라온 사이트의 경우 도메인이 등록된 도메인 등록업체 때문에 문제가 발생했습니다. Sav.com에서는 도메인의 네임서버를 Sav.com으로 지정하면 클라우드플레어에 자동으로 연동되도록 되어 있었습니다. 사용자가 클라우드플레어에 접속하여 캐시를 삭제하거나 제어할 수 있어야 하지만, 그것이 불가능했습니다.

결국 도메인 등록업체를 카페24 등의 국내 업체로 기관 이전한 후에 문제가 해결되었습니다. (참고로 저렴하게 .com이나 .net 도메인을 등록/기관이전하고 싶은 경우 네임칩 같은 해외 업체를 이용할 수 있습니다. 도메인 등록/기관 이전 후 다시 1년 후에 다른 곳으로 기관 이전하면 비용을 아낄 수 있을 것입니다.)

기관이전하고 도메인의 IP 주소를 지정하게 되면 클라우드플레어에서 더 이상 도메인이 로드가 안 되므로 robots.txt 캐싱 문제가 자동으로 해결된 것 같습니다.

클라우드플레어 CDN을 이용하면 트래픽을 절감할 수 있고 특히 DDoS 공격에 대하여 효과적으로 대응할 수 있습니다.

robots.txt 파일의 역할

robots.txt 파일은 웹사이트의 검색 엔진 최적화(SEO)에 중요한 역할을 합니다. 이 파일은 검색 엔진 크롤러에게 웹사이트의 어떤 부분을 크롤링하고 인덱싱해야 하는지, 또는 어떤 부분을 무시해야 하는지에 대한 지침을 제공합니다. 이를 통해 웹사이트 소유자는 사이트가 검색 결과에 어떻게 나타날지를 일정 부분 제어할 수 있으며, 중요한 콘텐츠에 크롤러의 주의를 집중시킬 수 있습니다.

또한, robots.txt 파일은 웹사이트의 성능과 보안 측면에서도 중요한 역할을 합니다. 불필요한 페이지나 민감한 정보가 포함된 페이지의 크롤링을 방지함으로써 서버 리소스(트래픽)를 절약하고 웹사이트의 로딩 시간을 개선할 수 있습니다. 뿐만 아니라 관리자 페이지나 개인정보와 같은 중요한 영역을 크롤러로부터 보호하여 웹사이트의 보안을 강화할 수 있습니다. 적절히 구성된 robots.txt 파일은 웹사이트의 가시성, 성능, 그리고 보안을 모두 향상시키는 데 기여할 수 있습니다.

robots.txt 파일은 보통 서버에 접속하여 사이트의 루트 폴더에 업로드하며 됩니다.

워드프레스에서는 부 SEO 플러그인이나 robots.txt 전용 플러그인을 사용하여 robots.txt 파일을 제어할 수도 있습니다.

예를 들어, Rank Math SEO를 사용하는 경우 Rank Math SEO » 일반 설정 » Robots.txt 편집에서 robots.txt 파일을 편집할 수 있습니다.

만약 물리적인 robots.txt 파일이 생성되어 있으면 "robots.txt 파일을 쓸 수 없습니다" 경고가 표시됩니다. 이 경우...

  • FTP에 접속하여 robots.txt 파일을 직접 수정하거나
  • FTP에 접속하여 robots.txt 파일을 삭제하고 Rank Math 내에서 이 파일을 편집할 수 있습니다.

참고


2 개 댓글

Leave a Comment

  1. 질문드렸던 당사자입니다 ㅠㅠ 혼자 여기저기 서칭 해보고 풀려있는 정보들은 다 적용해보았지만 며칠 혼자 해보고 도저히 해결이 안되서 코칭프로그램을 통해 워크님게 도움을 요청했습니다!

    클라우드웨이즈쪽에 문의해도 해결이 안됐었는데 일주일가량 저랑 개인톡 주고받고 따로 요청 안드려도 지속 신경 써주시면서 오늘 드디어 해결이 됐네요 ㅠㅠㅠ 너무감사드립니다!!

    응답
    • 코칭 프로그램을 이용해주셔서 감사합니다.

      보통은 캐시 예외 설정을 하고 캐시를 완전히 삭제하면 문제가 해결될 것입니다.

      이번 건의 경우 클라우드플레어에서 캐시를 삭제해야 하는 데, 클플에 로그인할 수가 없어서 캐시를 삭제할 수 없는 상황이었기 때문에 결국 도메인의 기관 이전을 하게 되었고, 이 때문에 시간이 지체되었습니다.ㅠ

      도메인 기관 이전은 며칠 시간이 걸리므로 시간 여유를 두고 진행해야 하는 작업입니다.

      응답