Extra Form
PHP PHP 7.2
CMS Rhymix

어떤 글은 추천이 되지만,

어떤 글은 추천할 수 없습니다~ 라고 합니다.

 

 

예를들어,

한 게시판에 다른 사람이 쓴 5개의 글이 있다면,

2개 정도는 추천이 되고, 3개 정도는 추천할 수 없다고 하는데...

최고관리자로 추천하면 추천이 됩니다.

 

제 문제라기보다, 회원들도 다른 회원의 글에 추천할 수 없다하니...

어떤 문제가 있는 것일까요?

 

AWS EC2 기반입니다.

  • profile
    아이피 문제인듯한데요?
    혹시 클플 쓰시시면 진짜 아이피를 알수 있게 조치 하셔야 합니다
  • profile
    추천할수 없다고 뜨는 경우는 다음 경우입니다.
    1. 이미 해당 아이디로 추천한 경우
    2. 이미 해당 아이피로 추천한 경우(이경우 회원이 다르더라도 추천이 안됩니다.)

    클라우드플레어나 로드밸런서 등 웹서버 앞에 프록시 서버가 있는 경우 XE에서 실제 접속자 아이피를 구해올수 있게 조치하셔야 합니다.

    클라우드플레어의 경우 https://gist.github.com/kijin/25be59ac4b0d7c5ef722 적용하시면 되며 로드밸런서 사용중이신경우 수동으로 프록시 서버에서 보내주는 아이피 정보를 $_SERVER['REMOTE_ADDR']에 대입해야 합니다.
  • profile
    @오토씽 @YJSoft 님 감사합니다.
    아마존 AMI+ELB 에서는 리얼IP를 $_SERVER['HTTP_X_FORWARDED_FOR'] 로 가져오네요.

    /common/constants.php : 54의 클라우드플레어 윗줄에서
    if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
    $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
    }

    를 추가하여 해결하였습니다. 감사합니다. (코어를 수정하는게 다소 마음에 걸리긴 합니다만...)
  • profile
    보안상 HTTP_X_FORWARDED_FOR 환경변수값이 위조될 수 있어...
    앞선 코드는 삭제하고 apache2의 환경설정을 수정하여 해결하였습니다.
    RemoteIPHeader X-Forwarded-For
    도움 감사드립니다.
  • profile profile
    HTTP_X_FORWARDED_FOR는 클라이언트의 X-Forwarded-For 헤더 값을 그대로 사용합니다.
    설정하는 위치가 바뀌었을 뿐 X-Forwarded-For 위조 문제는 여전합니다.

    보안을 신경쓰고 싶으시다면 웹서버 방화벽을 로드밸런서 아이피 이외에서 들어오는 요청을 차단하도록 구성하시거나, 로드밸런서 아이피에서 오는 요청일 때만 X-Forwarded-For를 오버라이드하도록 설정하시면 됩니다.
  • profile profile
    네넵. 맞습니다.안그래도...
    RemoteIPHeader 와
    RemoteIPTrustedProxy 가 세트더라구요. ^^;
    같이 세팅 마쳤습니다. 섬세한 조언 진심으로 감사합니다.