테스트 사이트 - 개발 중인 베타 버전입니다

클라우드플레어의 캐시서버 이용시 IP 적용하기

· 10년 전 · 10618 · 5
클라우드플레어의 캐시서버 이용시 IP가 클라우드플레어의 IP로 등록되는 이슈가 있습니다.

저만의 해결법은 그냥 common.php에

$_SERVER['REMOTE_ADDR'] = ($_SERVER['HTTP_CF_CONNECTING_IP']?$_SERVER['HTTP_CF_CONNECTING_IP']:$_SERVER['REMOTE_ADDR']);

를 적용하였습니다만,

이 방식이 좋은방식인지는 모르겠습니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 5개

저같은 경우엔 bbs/visit_insert.inc.php 파일에 추가하였습니다.

$_SERVER['REMOTE_ADDR'] = ( $_SERVER['HTTP_CF_CONNECTING_IP'] != NULL) ? $_SERVER['HTTP_CF_CONNECTING_IP'] : $_SERVER['REMOTE_ADDR'];
/extend/폴더에 임의에 php 파일을 생성한 뒤 사용해도 되지 않을까요
저같은경우 컨피그에다가 넣어서 사용하고 있습니다~
https://gist.github.com/kijin/25be59ac4b0d7c5ef722
이건 어떤가요?
실서버의 IP가 완벽하게 숨겨지지는 않기 때문에, 악의적인 사용자가 실서버에 직접 요청을 보내면서 CF-Connecting-IP 헤더를 조작하면 IP를 추적하기가 불가능하게 되어 버립니다. 따라서 실제로 클라우드플레어를 경유한 경우에만 이 헤더를 신뢰해야 합니다.

W789님이 링크하신 소스는 클라우드플레어 IP 대역에서 요청이 들어온 경우에만 작동하므로 안전합니다.

게시판 목록

그누보드5 팁자료실

글쓰기
🐛 버그신고