채디터5 에디터로 등록한 이미지 경로를 상대경로로
본문
로컬작업에서 웹서버에 올리니 ,에디터로 올린 이미지들은 모두다 이런식으로 주소가 들어갑니다.
/data/editor/1708/20170803193004_44e3bd05b96331b51d627d7f546c62bb_n9nj.jpg 이렇게 로컬경로로 잡혀있습니다. (cheditor5) 입니다.
그럼, 도메인이 바뀔때마다 이미지 엑박이 나는건가요? cheditor5 경로수정에 관한 부분은 찾아보니,
cheditor5/imageUpload/config.php 에 있는거 같습니다.
어떻게 손을 보면 될지 도움좀 부탁드립니다.
아래는 이 페이지속 전체 코드입니다. 상대경로를 잡는 방법이 있을까요? 아님, 다른 팁이나 간단한 방법이 있을까요?
<?php
include_once("_common.php");
if( strpos($config['cf_editor'], 'cheditor5') === false ){
exit;
}
define("CHE_UPLOAD_IMG_CHECK", 1); // 이미지 파일을 썸네일 할수 있는지 여부를 체크합니다. ( 해당 파일이 이미지 파일인지 체크합니다. 1이면 사용, 0이면 사용 안함 )
// ---------------------------------------------------------------------------
# 이미지가 저장될 디렉토리의 전체 경로를 설정합니다.
# 끝에 슬래쉬(/)는 붙이지 않습니다.
# 주의: 이 경로의 접근 권한은 쓰기, 읽기가 가능하도록 설정해 주십시오.
# data/editor 디렉토리가 없는 경우가 있을수 있으므로 디렉토리를 생성하는 코드를 추가함. kagla 140305
@mkdir(G5_DATA_PATH.'/'.G5_EDITOR_DIR, G5_DIR_PERMISSION);
@chmod(G5_DATA_PATH.'/'.G5_EDITOR_DIR, G5_DIR_PERMISSION);
$ym = date('ym', G5_SERVER_TIME);
$data_dir = G5_DATA_PATH.'/'.G5_EDITOR_DIR.'/'.$ym;
$data_url = G5_DATA_URL.'/'.G5_EDITOR_DIR.'/'.$ym;
define("SAVE_DIR", $data_dir);
@mkdir(SAVE_DIR, G5_DIR_PERMISSION);
@chmod(SAVE_DIR, G5_DIR_PERMISSION);
# 위에서 설정한 'SAVE_DIR'의 URL을 설정합니다.
# 끝에 슬래쉬(/)는 붙이지 않습니다.
define("SAVE_URL", $data_url);
function che_get_user_id() {
@session_start();
return session_id();
}
function che_get_file_passname(){
$tmp_name = che_get_user_id().$_SERVER['REMOTE_ADDR'];
$tmp_name = md5(sha1($tmp_name));
return $tmp_name;
}
function che_generateRandomString($length = 4) {
$characters = '0123456789abcdefghijklmnopqrstuvwxyz';
$charactersLength = strlen($characters);
$randomString = '';
for ($i = 0; $i < $length; $i++) {
$randomString .= $characters[rand(0, $charactersLength - 1)];
}
return $randomString;
}
function che_replace_filename($filename){
$ext = pathinfo($filename, PATHINFO_EXTENSION);
$random_str = che_generateRandomString(4);
$passname = che_get_file_passname();
$file_arr = explode('_', $filename);
return $file_arr[0].'_'.$passname.'_'.$random_str.'.'.$ext;
}
// ---------------------------------------------------------------------------
?>
답변 1
참고해보세요. 에디터만 다를 뿐 내용은 비슷할 겁니다.
이렇게 하면 되겠네요.
// $data_url = G5_DATA_URL.'/'.G5_EDITOR_DIR.'/'.$ym;
$data_url = '/'.G5_DATA_DIR.'/'.G5_EDITOR_DIR.'/'.$ym;