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년 전 | 4402 | ||
| 2154 | 3년 전 | 3228 | ||
| 2153 | 3년 전 | 2720 | ||
| 2152 |
|
3년 전 | 2592 | |
| 2151 | 3년 전 | 2228 | ||
| 2150 | 3년 전 | 2610 | ||
| 2149 | 3년 전 | 4227 | ||
| 2148 | 3년 전 | 3496 | ||
| 2147 | 3년 전 | 1909 | ||
| 2146 | 3년 전 | 2888 | ||
| 2145 | 3년 전 | 4021 | ||
| 2144 | 3년 전 | 2936 | ||
| 2143 | 3년 전 | 2302 | ||
| 2142 |
welcome
|
3년 전 | 2089 | |
| 2141 | 3년 전 | 2480 | ||
| 2140 |
|
3년 전 | 3481 | |
| 2139 |
|
3년 전 | 3229 | |
| 2138 | 3년 전 | 3244 | ||
| 2137 | 3년 전 | 3013 | ||
| 2136 | 3년 전 | 3134 | ||
| 2135 | 3년 전 | 3744 | ||
| 2134 | 3년 전 | 3304 | ||
| 2133 | 3년 전 | 3462 | ||
| 2132 |
|
3년 전 | 5320 | |
| 2131 | 3년 전 | 2358 | ||
| 2130 | 3년 전 | 3951 | ||
| 2129 |
|
3년 전 | 2946 | |
| 2128 | 3년 전 | 2977 | ||
| 2127 | 3년 전 | 4296 | ||
| 2126 | 3년 전 | 2553 | ||
| 2125 | 3년 전 | 2703 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기