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

cloudflare 글쓰기 댓글쓰기 오류날 경우

· 2년 전 · 1791 · 2

1. 일단 IP 문제로 해결이 안될경우만 임시방편으로 쓰시길 권장합니다. 토큰을 쓰지 않으면, 스팸등 악용될 수 도 있습니다.

 

/bbs/write_comment_update.php

 

토큰체크 주석처리

// 토큰체크
/*
$comment_token = trim(get_session('ss_comment_token'));
set_session('ss_comment_token', '');
if(!trim($_POST['token']) || !$comment_token || $comment_token != $_POST['token'])
    alert('올바른 방법으로 이용해 주십시오.');
*/

 

-------------------------------

 

/bbs/write_update.php

 

주석처리

// 토큰체크

//check_write_token($bo_table);

 

 

 

[추가] 웨볼루션 님이 알려주신 팁입니다.

2. extend 파일추가로 해결이 가능할 수도 있습니다.

extend 폴더에 cloudflare.extend.php 만들어서 올리시면 됩니다.

<?php
if(isset($_SERVER['HTTP_CF_CONNECTING_IP'])){
    $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP'];
}

function getRealUserIp(){
    switch(true){
        case (!empty($_SERVER['HTTP_X_REAL_IP'])) : return $_SERVER['HTTP_X_REAL_IP'];
        case (!empty($_SERVER['HTTP_CLIENT_IP'])) : return $_SERVER['HTTP_CLIENT_IP'];
        case (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) : return $_SERVER['HTTP_X_FORWARDED_FOR'];
        default : return $_SERVER['REMOTE_ADDR'];
    }
}

$_SERVER['REMOTE_ADDR'] = getRealUserIp();

댓글 작성

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

로그인하기

댓글 2개

2년 전
좋은팁 공유 감사해요
글쓰기 토큰을 무력화 하는게 좋은 방법이 아니죠.
토큰은 보안때문에 존재하는건데요.
잘못된 팁은 여러사용자로 하여금 문제를 야기시킬 수 있습니다.

extend 폴더에 cloudflare.extend.php 만들어서 올리시면 됩니다.

<?php
if(isset($_SERVER['HTTP_CF_CONNECTING_IP'])){
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP'];
}

function getRealUserIp(){
switch(true){
case (!empty($_SERVER['HTTP_X_REAL_IP'])) : return $_SERVER['HTTP_X_REAL_IP'];
case (!empty($_SERVER['HTTP_CLIENT_IP'])) : return $_SERVER['HTTP_CLIENT_IP'];
case (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) : return $_SERVER['HTTP_X_FORWARDED_FOR'];
default : return $_SERVER['REMOTE_ADDR'];
}
}

$_SERVER['REMOTE_ADDR'] = getRealUserIp();

게시글 목록

번호 제목
20497
20496
20467
20455
20448
20447
20446
20428
20424
20421
20404
20402
20401
20389
20350
20345
20333
20307
20286
20284
20281
20280
20239
20235
20226
20197
20192
20189
20166
20147