블로그.지오닷컴

PHP에서 특정 host 이름으로 접속 차단하기 본문

노하우/웹서비스 개발

PHP에서 특정 host 이름으로 접속 차단하기

지오닷컴 2024. 4. 26. 02:37

최근 AI 모델링을 위해 이미지 데이터를 수집하는 aws 서비스가 활개치고 있어서 운영 중인 웹사이트에 과도한 트래픽이 걸렸습니다. 개인 사용자가 aws 서버를 통해 홈페이지에 접속할 이유가 없기 때문에 host 이름을 기준으로 aws나 bot 인 경우 차단하는 소스를 임시로 만들었습니다. 참고하시기 바랍니다.

<?php
/* 호스트 이름에 특정 bot 주소가 포함되어 있으면 차단 */
$hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
if(strpos($hostname,'amazonaws.')>0) exit;
if(strpos($hostname,'search.')>0) exit;
if(strpos($hostname,'bot.')>0) exit;
if(strpos($hostname,'ahrefs.')>0) exit;
?>

마음대로 활용하기 편하게 짠 코드라 좀 더 단순화 해주시면 적용토록 하겠습니다. 다음에 또 필요한 코드로 돌아오겠습니다.

Comments