CloudFlare와 IP차단
만약 extend에서
[code]
$geo_info = unserialize(file_get_contents('http://www.geoplugin.net/php.gp?ip='.$_SERVER['REMOTE_ADDR']));
if ( !in_array($geo_info['geoplugin_countryCode'], ['KR']) ) { //['','','']
http_response_code(403);exit();
}
[/code]
이렇게 한국 외 모두 차단을 하면 접속이 안될 때
common.php 상단에 아래 내용을 추가하면 됩니다.
[code]
class FixCloudFlare{
public static $cf_ip_ranges = array('103.21.244.0/22','103.22.200.0/22','103.31.4.0/22','104.16.0.0/13','104.24.0.0/14','108.162.192.0/18','131.0.72.0/22','141.101.64.0/18','162.158.0.0/15','172.64.0.0/13','173.245.48.0/20','188.114.96.0/20','190.93.240.0/20','197.234.240.0/22','198.41.128.0/17','199.27.128.0/21');
public static function fixVisitorInfo(){
foreach (self::$cf_ip_ranges as $range){
if (self::inRange($_SERVER['REMOTE_ADDR'], $range)){
if(isset($_SERVER['HTTP_CF_CONNECTING_IP']))$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP'];
if(strpos($_SERVER['HTTP_CF_VISITOR'], 'https') !== false)$_SERVER['HTTPS'] = 'on';
return true;
}
}
return false;
}
public static function inRange($ip, $range){
list($range, $netmask) = explode('/', $range);
$ip = ip2long($ip) & (0xffffffff << (32 - $netmask));
$range = ip2long($range) & (0xffffffff << (32 - $netmask));
return $ip == $range;
}
}
FixCloudFlare::fixVisitorInfo();
[/code]
댓글 3개
게시판 목록
그누보드5 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 공지 | 3년 전 | 4407 | ||
| 2124 | 3년 전 | 2724 | ||
| 2123 | 3년 전 | 1871 | ||
| 2122 |
|
3년 전 | 2662 | |
| 2121 | 3년 전 | 3221 | ||
| 2120 | 3년 전 | 2703 | ||
| 2119 | 3년 전 | 2307 | ||
| 2118 | 3년 전 | 2690 | ||
| 2117 | 3년 전 | 2028 | ||
| 2116 | 3년 전 | 1909 | ||
| 2115 | 3년 전 | 3510 | ||
| 2114 | 3년 전 | 2104 | ||
| 2113 | 3년 전 | 3080 | ||
| 2112 | 3년 전 | 2079 | ||
| 2111 | 3년 전 | 1668 | ||
| 2110 | 3년 전 | 2008 | ||
| 2109 | 3년 전 | 2213 | ||
| 2108 | 3년 전 | 1837 | ||
| 2107 | 3년 전 | 1963 | ||
| 2106 | 3년 전 | 2596 | ||
| 2105 | 3년 전 | 1896 | ||
| 2104 | 3년 전 | 3574 | ||
| 2103 | 3년 전 | 2229 | ||
| 2102 | 3년 전 | 2255 | ||
| 2101 | 3년 전 | 3051 | ||
| 2100 | 3년 전 | 2189 | ||
| 2099 | 3년 전 | 3618 | ||
| 2098 | 3년 전 | 3258 | ||
| 2097 | 3년 전 | 3569 | ||
| 2096 | 3년 전 | 3316 | ||
| 2095 | 3년 전 | 3219 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기