CI 묻고 답하기

제목 GD 라이브러리가 설치되어 있으나 CI에서 인식하질 못합니다.
글쓴이 StaG 작성시각 2014/10/15 20:26:07
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 15497   RSS
썸네일 이미지를 만들기위해 우분투 서버에...

sudo apt-get install php5-gd

명령어를 사용하여 gd 라이브러리를 설치 했습니다.

phpinfo를 확인해보니...
 
GD Support enabled
GD Version 2.0
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.4.8
T1Lib Support enabled
GIF Read Support enabled
GIF Create Support enabled
JPEG Support enabled
libJPEG Version unknown
PNG Support enabled
libPNG Version 1.2.46
WBMP Support enabled
 


이렇게 제대로 설치되었습니다..
 
$this->load->library('image_lib');

if($thumb != 0){
                    $config_thumb['image_library'] = 'gd2';
                    $config_thumb['source_image']	= DATA_DIR.'/file/'.$row['bo_table'].'/'.$row2['bf_file'];
                    $config_thumb['new_image'] = DATA_DIR.'/file/'.$row['bo_table'].'/thumb/'.$row2['bf_file'];
                    $config_thumb['create_thumb'] = TRUE;
                    $config_thumb['maintain_ratio'] = FALSE;
                    $config_thumb['width']	= 75;
                    $config_thumb['height']	= 50;

                    $this->image_lib->initialize($config_thumb);
                    if (!$this->image_lib->resize())
                    {
                        echo $this->image_lib->display_errors('<p>', '</p>');
                    }
                    else {
                        $this->image_lib->resize();
                    }
                    $this->image_lib->clear();
                    $list[$i]->image_name = DATA_DIR.'/file/'.$row['bo_table'].'/thumb/'.$row2['bf_file'];

                }else{
                    $list[$i]->image_name = DATA_DIR.'/file/'.$row['bo_table'].'/'.$row2['bf_file'];
                }


그리고 위의 코드를 사용하여 썸네일 이미지를 만들었습니다.

그러나 코드를 실행해보니...

썸네일 이미지가 생성되질 안더군요.

CI 로그를 확인해보니...


ERROR - 2014-10-15 20:10:19 --> 이미지 경로가 올바르지 않습니다. <-- /index.php/
ERROR - 2014-10-15 20:10:19 --> 이 형식의 이미지를 처리하기 위한 GD 함수가 귀하의 서버에서 지원되지 않습니다. <-- /index.php/


이런 로그가 나오네요...

분명 GD 라이브러리를 설치했는데... 어디를 손대야할지 앞이 깜깜하네요...

조언 부탁드립니다~!



 
 다음글 로그인 후 이동 페이지 (5)
 이전글 CI 이미지 업로드 관련하여 업로드 경로 설정하는 것에... (3)

댓글

변종원(웅파) / 2014/10/16 10:09:44 / 추천 0
첫번째 에러부터 해결하세요.  -> 이미지 경로가 올바르지 않습니다
 
echo $config_thumb['source_image'] ; 해서 정상적으로 있는 파일인지 체크하시고
echo 
$config_thumb['new_image'] 출력해서 thumb 디렉토리 있는지 확인 및 퍼미션 확인. 
StaG / 2014/10/16 17:21:19 / 추천 0
<span neue,helvetica,arial,sans-serif"="">echo $config_thumb['source_image']
정상적으로 data/file/free 폴더에 있는 파일입니다.
data/file/free/thumb 디렉토리 정상적으로 생성되어 있으며 707퍼미션을 가지고 있습니다...

첫번째 에러는 gd라이브러리가 없어서 썸네일파일이 생성되지 않아서 나오는 에러라고 생각되네요...


썸네일 생성없이 바로..
$list[$i]->image_name = DATA_DIR.'/file/'.$row['bo_table'].'/'.$row2['bf_file'];
이 항목을 img 태그로 출력하면 정상적으로 원본 이미지 파일이 화면에 출력됩니다...
 
변종원(웅파) / 2014/10/16 19:36:26 / 추천 0
php-gd 설치후 웹서버 재시작은 하셨죠? 
변종원(웅파) / 2014/10/16 19:39:01 / 추천 0
그리고 로직이 이상합니다. 

$this->image_lib->resize() 가 성공할 경우 또 실행이 되네요.

실패했을 경우엔 화면에 에러가 출력이 되겠죠. 화면 에러 출력이 없다면 위 함수가 2번 실행되면서 에러가 나는걸 수 있습니다.
StaG / 2014/10/16 21:33:39 / 추천 0
넵 서버 재시작 했습니다.

$this->image_lib->resize() 이부분은 수정하였습니다. 감사합니다.

그러나 여전히 안되네요 ㅠㅠ