질문에 htaccess
태그가 있기 때문에 여러 가지 방법이 있습니다. htaccess 파일 솔루션을 찾고 있다고 가정합니다.
아파치 2.4 (또는 그 이상)를 사용하고 있지 않다면 mod_authz를 사용하여 모든 차단을 처리 할 수 있습니다. 다음과 같은 내용 :
# this makes it so blocked IPs get shown the block.php page
ErrorDocument 403 /block.php
Order Allow,Deny
Deny from all
Allow from 1.2.3.4
Allow from 1.2.3.5
Allow from 5.6.7.8
etc...
여기에서는 모든 것을 차단하고 "허용"목록을 보관합니다. 전체 서브넷을 허용하려는 경우 단축 할 수 있습니다 (예 :
Allow from 1.2.3
은 1.2.3으로 시작하는 IP를 허용합니다.
당신은이에 대한 mod_rewrite를 사용할 수 있습니다 :
RewriteEngine On
RewriteCond %{REMOTE_ADDR} !^1\.2\.3\.4$
RewriteCond %{REMOTE_ADDR} !^1\.2\.3\.5$
RewriteCond %{REMOTE_ADDR} !^5\.6\.7\.8$
RewriteRule^/block.php [L,F]
를 여기, 당신은 IP와 일치하는 정규 표현식을 사용할 수 있기 때문에 좀 더 유연성을 가지고있다. 따라서 다음과 같은 작업을 수행 할 수 있습니다.
RewriteCond %{REMOTE_ADDR} !^1\.2\.[3-6]\.
이렇게하면 1.2.3, 1.2.4, 1.2.5 및 1.2.6으로 시작하는 모든 IP가 허용됩니다.
이 지시어를 server/vhost 설정 파일에 넣을 수도 있습니다. htaccess 파일 대신에이 지시문을 조금 더 빠르게 사용할 수 있습니다.
이 문제는 사용자의 주소와 리디렉션을 식별하는 두 가지 문제로 분리하여 조사 할 수 있습니다. 당신은 둘 다에 대한 방대한 양의 예제를 찾을 수 있어야합니다. 또한 웹 서버 수준에서이 작업을 수행하는 것이 좋습니다. – fejese