메뉴 건너뛰기

2014.03.26 02:56

iconv 추가 설치

조회 수 8603 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
Iconv 모듈 설치하기

XLI. iconv 함수
이 모듈은 iconv 문자셋 변환 기능을 사용하는 인터페이스를 가지고 있다.
이 모듈로, 로컬 문자셋을 유니코드 문자셋 등의 다른 문자셋으로 변환할 수 있으며
지원하는 문자셋은 시스템의 iconv 실행에 의존한다.

몇몇 시스템에서는 iconv가 기대한대로 작동하지 않을 수 있는 점에 주의하고
GNU libiconv 라이브러리를 설치하면 대부분의 경우에 좋은 결과를 얻을 수 있다.

## 설치되어져 있는 php에 iconv 모듈 깔기


iconv 라이브러리는 리눅스서버에는 기본으로 설치되어 있을 경우 남은 문제는
PHP에서 iconv를 포함시키는 것인데 이는 extension을 이용하면 편하다.

1.
그러기 위해서는 설치한 소스중 iconv가 있는 곳을 찾아서 모듈을 생성해 줘야한다.
[root@localhost /]# cd /usr/local/src/php-4.x.x/ext/iconv // php 소스를 풀어둔
디렉토리로 이동
[root@localhost /]# phpize
[root@localhost /]# ./configure
[root@localhost /]# make

만약 소스를 삭제했거나하면 자신의 PHP 버전과 일치하는 버전을 찾아서 다운로드 받아서위와 같이 하면 된다.


각 버전별 PHP 소스는 아래에서 구할 수 있다.
최신버전 : http://www.php.net/downloads.php
이전버전 : http://kr2.php.net/releases/index.php

2.
위의 작업이 끝난 후에 iconv.so 와 iconv.la 가 생성되어져 있는 것을 확인할 수 있다.
[root@localhost /]# ls modules
[root@localhost /]# iconv.la iconv.so

3. 위의 모듈을 확인 후 적당한 extension의 위치에 iconv.so 파일을 복사한다.
[root@localhost /]# cp modules/iconv.so /usr/local/php/lib/php/extensions

4.
마지막으로 php.ini 파일을 편집해줘야 한다.

그리기 위해서는 웹에서 phpinfo(); 함수를 이용하여 php.ini파일을 찾으면 된다.
Zend가 깔려져 있는 경우가 많기 때문에 주로 /usr/local/Zend/etc/php.ini 나
/usr/local/php/etc/php.ini 위치에 설치가 되어진 경우가 많으니 정확한 경로를
파악해서 수정해줘야 한다.
[root@localhost /]# vi /usr/local/Zend/etc/php.ini

5. php.ini 에서 먼저 extension_dir를 고쳐줘야한다.
3번에서 iconv.so 를 복사한 디렉토리로 고쳐주도록 한다.
....
; Directory in which the loadable extensions (modules) reside.
; extension_dir = "./"
extension_dir = "/usr/local/lib/php/extensions/" <<-- 이 부분
....

6.
php.ini 에서 다음으로 Dynamic Extensions 항목을 찾아서
아래와 같이 "extension=iconv.so" 를 직접 적어준다.
....
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
;
; If you wish to have an extension loaded automatically, use the following
; syntax:
;
; extension=modulename.extension
;
; For example, on Windows:
;
; extension=msql.dll
;
; ... or under UNIX:
;
; extension=msql.so
;
; Note that it should be the name of the module only; no directory information
; needs to go here. Specify the location of the extension with the
; extension_dir directive above.

extension=iconv.so <<- 이부분을 직접 입력해 준다.
...

7.
그리고 저장한 다음 apache를 재시작하면 되며 설정이 적용되었는지 확인하려면
웹에서 phpinfo(); 함수를 이용해서 보면 된다.

phpinfo() 함수를 이용해서 서버설정을 확인하려면 phpinfo.php 처럼 파일을 하나
만들어서 내용에 아래와 같이 입력해 주고 웹상에서 실행해 주면 된다.

<?
phpinfo();
?>

List of Articles
번호 제목 날짜 조회 수
97 리눅스 yum 명령어 2016.09.11 7993
96 솔라리스 10 (Telnet/FTP/SSH) 설정 2017.02.03 7996
95 mysql DB 지정 백업 스크립트 2016.03.18 8004
94 백업받기 2016.09.12 8010
93 외부에서 apache 정보 못보도록 설정하기 2014.02.27 8013
92 리눅스서버 시간 한국 시간(한국표준시;KST)으로 변경 2014.03.26 8019
91 하루동안 실행된 쿼리 중 수행시간이 가장 긴 조회 쿼리 100개 2017.04.28 8042
90 특정 데몬의 메모리 점유율 확인하기 2014.02.27 8051
89 PHPIZE를 이용한 openSSL PHP 확장 모듈 설치 2016.09.11 8065
88 APM 소스 설치 2014.02.27 8068
87 Apache 웹서버 server-status 모니터링 2014.02.27 8074
86 Yum과 rpm을 이용하여 PHP5.5버전 설치 2016.03.18 8075
85 아파치 디렉토리 보이는 것 막기 file 2017.02.02 8076
84 ftp passive mode 설정 2014.02.27 8095
83 리눅스 부팅 과정과 커널 패닉 조치요령 2014.02.27 8108
82 리눅스 계정 파일 위치 file 2015.07.01 8117
81 Apache 리다이렉트 2016.03.18 8155
80 apache 컴파일시 동시 접속자 제한 변경하기 2014.03.26 8157
79 [Linux]리눅스,사용자계정(관련 파일,명령어) file 2015.11.21 8159
78 아파치 재시작 없이 설정 적용 2015.07.16 8184
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 Next
/ 12

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved