PHP 재설치 없이 mbstring 및 iconv 확장 모듈 추가 설치 및 컴파일 방법
페이지 정보

본문
PHP 재설치 없이 mbstring 및 iconv 확장 모듈 추가 설치 및 컴파일 방법
그누보드 운영 중 PHP 재설치 없이 mbstring, iconv 등 누락된 확장 모듈을 소스 컴파일로 추가하는 구체적인 절차와 확인 방법을 알아봅니다.
작업 전 백업 파일 확인
PHP 재설치 없이 확장 모듈을 추가하는 작업 전에는 반드시 기존 php.ini 파일(보통 /usr/local/php/lib/php.ini 등)과 웹서버 설정 파일(httpd.conf 등)을 백업하여 문제 발생 시 원상 복구할 수 있도록 준비해야 합니다.
PHP 확장 모듈 컴파일 명령어 순서
동일한 버전의 PHP 소스 디렉토리에서 확장 모듈 경로로 이동한 뒤 phpize와 configure, make 순서로 컴파일합니다.
컴파일 명령어 순서 및 예시
- 확장 모듈 경로로 이동
cd PHP소스디렉토리/ext/설치하고자하는확장모듈명 - phpize 실행
/usr/local/php/bin/phpize - configure 설정
./configure --with-php-config=/usr/local/php/bin/php-config --enable-설치하고자하는확장모듈명 - make 실행
*참고: 컴파일이 완료되면makemodules/디렉토리 내에 생성된.so파일을 확인할 수 있습니다.
PHP.ini 설정 및 아파치 재시작 방법
컴파일이 완료된 후 생성된 .so 파일을 지정된 확장 모듈 디렉토리에 복사하고, php.ini 파일에 설정을 추가하여 모듈을 활성화합니다.
1. php.ini 설정 추가
php.ini 파일에 확장 모듈 디렉토리 경로와 사용할 모듈 설정을 추가합니다.
extension_dir = /usr/local/php/modules
extension = mbstring.so
2. 웹서버 재시작
설정을 마친 후에는 웹서버를 재시작하여 변경된 설정과 모듈이 정상적으로 로드되는지 확인합니다. (운영체제 및 환경에 따라 systemctl restart httpd, service apache2 restart 등 재시작 명령어가 다를 수 있습니다.)
PHP 확장 모듈 적용 후 검증 및 복구 방법
웹서버 재시작 후 phpinfo() 함수 등을 사용하여 모듈이 정상적으로 로드되었는지 확인합니다.
만약 오류가 발생할 경우, 작업 전에 백업해 둔 기존 설정으로 복구합니다.
상황별 판단 및 행동 가이드
| 내 상황 | 선택 기준 | 다음 행동 |
|---|---|---|
| PHP 확장 모듈(mbstring, iconv 등)이 누락되어 서버 재설치가 고민될 때 | 서버 전체 재설치 대신 동일 버전 PHP 소스를 활용한 동적 공유 모듈 컴파일 방식 선택 | 기존 php.ini 및 웹서버 설정 백업 후 소스 디렉토리에서 phpize, configure, make 실행 |
| 컴파일 완료 후 모듈을 적용하고 정상 작동 여부를 확인해야 할 때 | 생성된 .so 파일을 지정된 모듈 디렉토리에 배치하고 php.ini 설정 추가 | php.ini에 extension_dir 및 모듈 설정 추가 후 웹서버 재시작 및 phpinfo()로 검증 |
실전 FAQ
Q. 컴파일 과정에서 오류가 발생해 서버 설정이 망가지면 어떻게 하나요?
- 대안: 작업 전 백업해 둔 기존 php.ini 파일과 웹서버 설정 상태로 즉시 복구하십시오.
Q. 컴파일할 때 PHP 소스 디렉토리는 아무 버전이나 써도 되나요?
- 예외: 반드시 현재 서버에 설치된 PHP와 동일한 버전의 PHP 소스 디렉토리를 사용해야 합니다. 다른 버전을 사용할 경우 모듈이 정상적으로 로드되지 않거나 오류가 발생할 수 있습니다.
참고자료
기타 참고자료
- 이전글PHP mysql 함수에서 mysqli로의 마이그레이션 및 CRUD 구현 가이드 26.09.15
- 다음글그누보드 설치 및 마이그레이션 후 정리해도 되는 불필요한 파일 목록 26.09.14
댓글목록
등록된 댓글이 없습니다.