2012-06-12 1 views
2

클라이언트가 수신 한 일부 참조 스팸을 차단하기 위해 다음 코드를 구현하려고합니다.도메인에 의한 리퍼러 스팸 차단 - 403 응답 효율

요청을 리디렉션하는 가장 효율적인 방법은 403입니다 (헤더 크기가 0 바이트 또는 최소 크기라고 생각합니다) 또는 고려해야 할 다른 옵션이 있습니까?

RewriteEngine on 
# Options +FollowSymlinks 
RewriteCond %{HTTP_REFERER} spammer-one\.com [NC,OR] 
RewriteCond %{HTTP_REFERER} spammer-two\.com 
RewriteCond %{HTTP_REFERER} spammer-three\.com 
RewriteRule .* - [F] 

우려의 출처는 자신의 사이트가 스팸 메일 도메인의 숫자 트래픽의 거대한 볼륨을 받고 있다는 것입니다, 서버로드는 요인이 될 수 있습니다.

답변

2

제 연습 - 완벽합니다 (404 또는 다른 코드로 응답하는 것을 더 속이기를 원하지 않는다면).

헤더는 길이가 0 바이트가 아니지만 아주 작습니다 (2 또는 3 라인 AFAIK). 0 바이트 응답 (즉, 응답 헤더를 보내지 않고 연결이 끊어짐)은 매우 낮은 수준의 Apache에서만 전송할 수 있습니다 (예 : 요청한 URL의 유효성을 검사 할 때 유효하지 않은 문자를 포함하는 경우). 에서 mod_rewrite를 차기 전에

그냥 작은 노트 :. 사이트 (당신이 말한 것처럼), 다음의 read 처, 대신 htaccess로의 아파치의 설정 파일 중 하나에 배치하는 것이 좋습니다 매우 바쁜 경우 모든 요청에.