.htaccess로 UserAgent libwww-perl을 차단하면 작동하지 않나요?

.htaccess로 UserAgent libwww-perl을 차단하면 작동하지 않나요?

서버가 Apache에서 실행 중이고 libwww-perl을 차단하려고 시도하고 있지만 작동하지 않는 이유는 확실하지 않습니다. .htaccess에 다음을 넣었지만 테스트를 실행해도 libwww-perl이 여전히 차단되지 않았다는 알림이 표시됩니다.

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} libwww-perl.* 
RewriteRule .* – [F,L]

여기 글을 봤는데.htaccess를 생성하고 UserAgent libwww-perl을 차단하는 방법은 무엇입니까?

그러나 그들은 IIS7을 실행하는 것 같아서 거기에 대한 답변이 적용되지 않는다고 생각합니다.

나는 다음을 추가해 보았습니다:

SetEnvIfNoCase User-Agent "^Wget" bad_bot 
SetEnvIfNoCase User-Agent "^EmailSiphon" bad_bot 
SetEnvIfNoCase User-Agent "^EmailWolf" bad_bot 
SetEnvIfNoCase User-Agent "^libwww-perl" bad_bot

<Location /> 
Order allow,deny 
Allow from all 
Deny from env=bad_bot 
</Location>

다른 기사에서 제안한 내용http://community.spiceworks.com/how_to/1443-how-to-block-libwww-perl, 그런데 내부 서버 오류 500이 발생합니다.

어떤 아이디어가 있나요?

친절한 감사

답변1

아래 블록을 시도해 보세요. 방금 Apache 설정 중 하나에서 직접 테스트했는데 제대로 작동했습니다.

<IfModule mod_rewrite.c>   
RewriteEngine on

SetEnvIfNoCase User-Agent ^libwww-perl bad_bot

Order Allow,Deny  
Allow from ALL   
Deny from env=bad_bot

관련 정보