nginx 에서 크롤러 봇(crawler bot) 막기
보통 웹사이트의 / 루트 디렉토리에 robots.txt 를 작성하면 크롤러가 잘 알아서 들어오던지, 피해가던지 해야 하는데 그런 기대를 하는 것은 무리인것 같습니다.
작성한대로 따라주지 않으니 방문자 확보에 도움이 안되고 무작정 퍼가기만 하는 크롤러는 막는게 서로(?)에게 좋습니다.
nginx 의 설정 파일에 다음과 같이 작성합니다.
그럼 robots.txt 를 무시하는 크롤러를 막을 수 있습니다.
map $http_user_agent $limit_bots {
default 0;
~*(bingbot|FeedDemon|GrapeshotCrawler|DuckDuckBot|MegaIndex) 1;
~*(VelenPublicWebCrawler|SimplePie|YandexBot|SCMGUARD|DotBot) 1;
~*(AhrefsBot|SemrushBot) 1;
}
server {
location / {
if ($limit_bots = 1) {
return 403;
}
}
location ~ \.php$ {
if ($limit_bots = 1) {
return 403;
}
}
# systemctl reload nginx
nginx 를 reload 한 후 log 를 살펴 보면
[2020-04-06T09:48:27+09:00] 200 - "GET /cma
[2020-04-06T09:48:29+09:00] 403 - "GET /qa/\compatible; SemrushBot/6~bl; +http://www.semrush.com/bot.html)" "-" "-"
[2020-04-06T09:47:58+09:00] 403 - "GET /ds_\ +http://yandex.com/bots)" "-" "-"
[2020-04-06T09:47:58+09:00] 403 - "GET /qa/\"-" "Mozilla/5.0 (compatible; DotBot/1.1; http://www.opensite
[2020-04-06T09:47:59+09:00] 403 - "GET /so_\0; +http://yandex.com/bots)" "-" "-"
[2020-04-06T09:48:00+09:00] 403 - "GET /qa/\Bot/6~bl; +http://www.semrush.com/bot.html)" "-" "-"
[2020-04-06T09:48:01+09:00] 200 - "GET /qa/
위와 같이 잘 막고 있는 것을 확인 할 수 있습니다.
댓글 5개
duckduck 이런덴 검색사이트로 아는데
검색엔진에 올라가 홍보에 도움주지않는가요?
구글도있는데 위에 운영자님께서 bot는 없는듯한데
그건 홍보에 도움 되서 뺀건가요??
게시판 목록
개발자팁
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5006 | 기타 | 5년 전 | 1922 | ||
| 5005 | 기타 | 5년 전 | 2022 | ||
| 5004 | 기타 | 5년 전 | 2137 | ||
| 5003 | 기타 | 5년 전 | 2813 | ||
| 5002 | 기타 | 5년 전 | 2389 | ||
| 5001 | 기타 | 5년 전 | 2725 | ||
| 5000 | 기타 | 5년 전 | 4768 | ||
| 4999 | 기타 | 5년 전 | 2031 | ||
| 4998 | 기타 | 5년 전 | 2695 | ||
| 4997 | 기타 | 5년 전 | 2745 | ||
| 4996 | 기타 | 5년 전 | 2667 | ||
| 4995 | 기타 | 5년 전 | 2912 | ||
| 4994 | 기타 | 5년 전 | 2167 | ||
| 4993 | 기타 | 5년 전 | 2042 | ||
| 4992 | 기타 | 5년 전 | 1968 | ||
| 4991 | 기타 | 5년 전 | 1985 | ||
| 4990 | 기타 | 5년 전 | 2044 | ||
| 4989 | 기타 | 5년 전 | 2365 | ||
| 4988 | 기타 | 5년 전 | 2056 | ||
| 4987 | 기타 | 5년 전 | 2332 | ||
| 4986 | 기타 | 5년 전 | 2801 | ||
| 4985 | 웹서버 | 5년 전 | 4948 | ||
| 4984 | OS | 5년 전 | 3009 | ||
| 4983 | MySQL | 5년 전 | 2895 | ||
| 4982 | 기타 | 5년 전 | 2015 | ||
| 4981 | PHP | 5년 전 | 2658 | ||
| 4980 | 기타 | 5년 전 | 8979 | ||
| 4979 | 웹서버 | 5년 전 | 3080 | ||
| 4978 | 기타 | 5년 전 | 2052 | ||
| 4977 | PHP | 5년 전 | 3516 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기