모바일 작업시 심볼릭안하고 데이터 공유하기 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

모바일 작업시 심볼릭안하고 데이터 공유하기 정보

모바일 작업시 심볼릭안하고 데이터 공유하기

본문

root/
root/m

ln -s ../data data
를 통해서 심볼릭 설정을 하고 작업을 합니다..

그런데 이게 간혹 ssh접속을 안해주는 호스팅이 있어서 고민좀 해봅니다.

일반 데이터 들은
기존경로를 $g4[path]/data

1번째 방법
$g4[path]/../data

2번째 방법
http://zeronara.net/data
이렇게 지정을 해주고 있습니다..

여기서 1가지 문제가 발생하는데
썸네일을 사용해서 갤러리 최신글을 생성할 경우..
http://zeronara.net/data의 썸을

http://m.zeronara.net/ 이곳에서 못불러 온다는 겁니다..
못불러 온다기 보다는

if (file_exists($thumb)) {
이런 조건을 할 수가 없습니다.

이거 아시는 분 도움좀 부탁드립니다..

댓글 전체

같은 서버라면 어느 계정에서도 문제없습니다. 다른서버라면 파일을 긁어와서 저장해야겠죠.

<?
include_once("./_common.php");

unset($data);

$data['path'] = "/home/user/public_html"; // 절대경로 설정 (그누보드 설치폴더)
$data['host'] = "http://sir.co.kr"; // 이미지 불러올 도메인 설정

// 임시 게시물 지정
$bo_table = "notice";
$wr_id = "1";

// 이미지 체크
$sql = " select * from $g4[board_file_table] where bo_table = '".$bo_table."' and wr_id = '".$wr_id."' and bf_file != '' and bf_type in (1,2,3) order by bf_no asc ";
$file = sql_fetch($sql);

// 전체 파일경로
$thumb = $data['path']."/data/file/".$bo_table."/".$file['bf_file'];

// 절대경로 체크
if (file_exists($thumb) && $file['bf_file']) {

    // 절대 경로가 출력되지 않기 위해서 경로를 도메인으로 변경
    $thumb = str_replace($data['path'], $data['host'], $thumb);

    $image = $thumb;

} else {

    $image = "./noimage.gif";

}

echo $image."<br>";
echo "<img src='".$image."'><br>";
?>
다들 감사합니다..
처음부터 경로에서 이미지는 불러왔습니다..

그런데 경로에서
if (file_exists($thumb)
조건을 걸었는데 이게 전혀 먹히지 않습니다..

어떤 설정 때문인지는 모르겠으나 일본서버라서 그런지 명령이 안먹히는게 있나 보네요..
설치 os 는 FreeBSD 7.1
일단 처리는 심볼릭으로 처리했으나

심볼릭을 하지 않을 때를 고려한건데 잘 안되네요..
좀더 조언 주세요~~~^^
dir_name 과 __FILE__ 을 사용하여 절대 경로를 계산하여 접근하시는게 좋을것 같습니다.
보안관련하여 상위폴더 참조나 상위폴더 이동을 막을수 있습니다.

common.php 에서
g4['data_path'] = dirname(dirname(__FILE__))."/data";

참조 오류가 발생한다면,
■basename() - Returns trailing name component of path
■pathinfo() - Returns information about a file path
■realpath() - Returns canonicalized absolute pathname
아 같은 파일함수로 실제 파일 접근이 가능한지 확인하시고

http://kr.php.net/manual/en/function.file-exists.php 문서를 보시면 file_exists 함수가 false 를 리턴할수 있는 상황들이 있습니다.(Note 부분 참조)

모든것은 서버 상황과 상관이 있음으로, 일반 Linux 에서도 테스트 해보시고, 호스팅 받고  있는 FreeBSD 에서만 나타난다면, 위의 명령어를 적절히 조합하여 사용하셔야 예외를 회피하셔야 합니다.
전체 98 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT