2014-08-28 1 views
0

다음과 같은 문제가 있습니다.외부 사이트 복사 (말림) 사이트, 리디렉션하는 방법

내 웹 사이트가 다른 도메인과 다른 서버로 복사 중이고 유일한 변경 사항은 광고입니다.

도메인 A는 .COM 도메인을 가지고 원래 사이트 (나를 소유)

도메인 B는 .ee 도메인을 가지고 1 복사 : 1 (그늘 에스토니아어 회사에 의해 소유) 원래 사이트

그들은 아마도 콘텐츠를 가져 와서 광고를 독자적으로 변경하기 위해 말풍선을 사용합니다. 법적 절차가 진행 중이지만 매우 오랜 시간이 걸릴 것입니다 (우리 모두 알고 있듯이).

그동안 나는 다른 페이지를 보여주기 위해이 현재 ip (내 콘텐츠를 추출하는 서버에서)를 원합니다.

문제 :

내 서버가 니스의 환금을 사용하고, 그래서 PHP/아파치 기반 리디렉션 (현금 경우) 내 자신의 사용자가 잘못된 페이지가 표시됩니다 것을 의미합니다. javascript를 사용하여 ip를 결정한 다음 리디렉션해야합니까? 나는 광택 캐시가 실행되는 동안 IP를 기반으로 다른 페이지를 제공하려면 어떻게

:

Q (모든 사용자에 대해로드 시간을 늦추고).

서버 :

를 CentOS 6.4

아파치, 니스

PHP 5+

답변

0

그것은 도메인을 확인하는 것이 좋습니다 - 그것은 도메인이 아니라면는 리디렉션합니다. 스크립트를 비동기 적으로로드 할 수 있으므로 다른 스크립트로드를 차단하지 않습니다.

curl/perl 사용자 에이전트를 차단할 수 있지만 사용자 에이전트를 변경하면 1 분이 걸리기 때문에 너무 많이 사용하지 마십시오. :)

또한 초당 너무 많은 요청이있는 IP를 검색하고 iptables에 IP를 추가하도록 fail2ban을 구성 할 수 있습니다. 중지하는 가장 쉬운 방법 중

http://www.fail2ban.org/wiki/index.php/Main_Page

+1

하나는'cURL'은의''를 사용하여 비활성화 된 페이지로 리디렉션하는 것입니다. 'cURL'은 자바 스크립트를 지원할 수 없으므로 페이지가로드되지 않습니다. 이것은 귀하의 사이트를 어느 정도 사용할 수있는 사용자에게 영향을 미칩니다. 브라우저에서 'noscript'확장자를 사용하는 사람들은 실제로 페이지에 착륙해야하며 단순히 페이지가 비활성화 된 이유를 설명해야합니다. – Ohgodwhy

+0

그래서 .NET을 사용하여 웹 페이지를 크롤링하기 위해 IE 기반 봇을 작성합니다. 더 느리게, 물론,하지만 차단하기가 더 힘들어;) – mariobgr

+0

맞아, 역시 완전히 이해. 그러나 실제로 이렇게하기 위해 밖으로 나가는 사람들은 소수입니다. 'cURL'을 사용하는 대부분의 사람들은 copy + pasta가있는 스크립트 키디입니다. – Ohgodwhy