2013-02-26 7 views
0

없이 탐색 방지 : 보통 인간 브라우징은 "외모 때문에젠토는 - 사용하여 내 상점을 통해 모든 검색 누군가 (많은 IP 주소를 사용)에 문제가 재 작성

example.com/catalog/category/view/id/$i 

나는 URL 재 작성은 켜져있다 친화적 인 "따라서

example.com/category_name.html 

질문입니다 - 방법을 사용하여 상점을 찾아 방지하기 위해"친숙한 "URL을 허용"만을 남겨, (재 작성하지 않음)의 URL "오래된?

상점이 실제로 느리게 작동하게하는 수백 개의 스레드를 사용하고 있기 때문에 이것은 매우 중요합니다.

답변

1

임의의 IP 주소가 많기 때문에 단일 또는 작은 주소 그룹의 액세스를 차단할 수 없습니다. 어떤 방식 으로든이 크롤러를 고유하게 식별하는 일부 로깅을 구현해야 할 수도 있습니다 (브라우저 에이전트 또는 아마도 Modernizr javascript 라이브러리를 영리하게 사용).

일단이 크롤러의 고유 식별자를 구별 할 수 있다면 .htaccess (사용자 에이전트 일 경우)에서 규칙을 사용하여 리디렉션하거나 다른 방법으로 서버의 소비를 막을 수 있습니다.

이 질문은 사용 도구에 대한 규칙에 대해 자세히 설명합니다. 다시 작성되면

Block all bots/crawlers/spiders for a special directory with htaccess

+0

@Spyro가 전자 상거래 회사를 관리하는 방식에 따라 모든 봇/크롤러를 차단하는 것은 나쁜 생각 일 수 있습니다 ... 우리는 사이트를 크롤링하여 공급 업체 (404 개 없음)와 올바른 재고 상태 등 ... 2500 개 제품을 판매하려면 해당 제품을 점검 할 수 있어야합니다. 그와 같은 트래픽을 차단하는 것은 위험합니다. 왜냐하면 "friendlies"를 제거하기가 어렵 기 때문입니다. – Zak

+2

물론 특정 크롤러의 고유 식별자를 확인하는 몇 가지 로그를 구현하는 것이 좋습니다. 이것이 합법적 인 크롤러 인 경우 몇 가지 이점이 있지만 실제 사이트에서 사용할 수없는 지점까지 사이트가 느려지는 경우 크롤러는 방해가되므로 차단되어야합니다. 크롤러가 불법이며 고유 한 식별자가있는 경우 문을 표시해야합니다. – pspahn

0

은 ... 그들은이있다 있습니다. 여러 가지 이유로 Mage 데이터베이스에 저장됩니다. 하나는 사이트를 크롤링하는 크롤러입니다. 다른 하나는 이전 페이지를 북마크에 추가 한 사용자입니다. 개인이 리디렉션을 완료하고 정리하는 데 사용되는 여러 가지 방법이 있습니다. (Google) ... 그러나 Magento를 사용하면 Magento를 사용하여 쉽게 관리 할 수 ​​있습니다.

site map을 생성하여 사이트에 영향을주는 크롤러에 제출하는 것이 좋습니다. 이 크롤러는 필요하지 않은 수많은 페이지를 크롤링하는 것일뿐만 아니라 중복 된 내용 (잘못된 주주)을 보게됩니다.

+0

IP를 확인했으며 대부분이 프랑스의 OVH 호스팅 회사에 속합니다. 이제 내가 틀렸다고 정정하되 합법적 인 크롤러가 호스팅 서버를 사용하여 작업하고 있는지 의심 스럽다.;) – Cleankod

+0

또한, 내 가게는 URL 재 작성 작업을 시작한 지 첫날부터 시작되었습니다. 따라서 누군가가 자신의 북마크에 "오래된"링크가있을 수 있습니다. Sitemap에 관해서는, 나는 이미 가지고 있고 구글은 여기에 문제가되지 않습니다. – Cleankod

1

거미가 지정된 패턴의 모든 URL을 크롤링하는 경우 :

example.com/catalog/category/view/id/$i 

다음 당신은 단지 .htaccess에서 해당 URL을 죽일 수 있습니다. 재 작성은 category.html -> /catalog/category/view/id/$i에서 내부적으로 이루어 지므로 봇을 차단해야합니다.

+0

이미 그걸 시도했지만, dir이없고 다른 규칙이 프런트 컨트롤러의 실제 호출에 대한 규칙을 다시 작성하면 url을 차단하는 규칙은 무엇입니까? – Cleankod

+0

불량 모듈이없는 경우 모든 모듈은 리디렉션 (301,302)에 category.html 링크를 사용해야합니다. 그래서 당신은이 URL을 막을 수 있습니다. 다음과 같이해볼 수 있습니다 : deny all