intl 필수 모듈 누락 개요
다음과 같이 WordPress 관리 화면에 로그인 했을 때 알림판 메뉴, 또는 사이트 건강 상태의 표시 사이트를 웹 브라우저에 직접 입력하여 헬스 체크 결과를 확인했을 때 필수 모듈이 설치되어 있지 않다는 메시지가 표시됩니다.
이 같은 메시지를 처음 접하면 사이트 운영에 문제가 일어나지 않을까 걱정이 되곤 합니다. 지금까지는 눈깨비 사이트도 운영 기간 중 신규 글을 작성하거나 기존 글을 관리하는데에 전혀 문제는 없었습니다. 조금이라도 이런 걱정을 없애고자 이 글에서 intl 필수 모듈을 설치하는 방법을 소개합니다.
알림판 메뉴
https://워드프레스호스트명/wp-admin/site-health.php의 사이트 건강 상태의 표시 내용
현재 확장 모듈 확인하기
php에서는 Internationalization Functions의 확장 모듈명이 intl입니다. 이 모듈은 숫자,날짜 포맷 등 로케일 인식 작업을 수행하는데 사용됩니다.위의 미설치 경고를 없애고 싶다면 다음과 같이 모듈을 설치하십시오.
intl확장 모듈 함수에 대해서는 다음 공식사이트를 참조하십시오.
다음 명령으로 확장 모듈 intl이 php의 환경 설정에 존재하지 않는 것을 확인합니다.
$ sudo php --ini
Configuration File (php.ini) Path: /etc
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed:
/etc/php.d/20-bz2.ini,
/etc/php.d/20-calendar.ini,
....중간 생략....
/etc/php.d/30-xmlrpc.ini
/etc/php.d/40-imagick.ini
/etc/php.d/40-zip.ini
다음 명령으로 확장 모듈 intl의 파일이 설치 되어있지 않은 것을 확인합니다.
$ sudo find / -name intl.so
$
현재 PHP 버전 확인하기
다음 명령으로 현재 PHP 버전을 확인합니다.
$ php -v
PHP 7.4.23 (cli) (built: Aug 24 2021 16:33:30) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.23, Copyright (c), by Zend Technologies
확장 모듈 설치
다음 명령으로 intl 확장 모듈을 설치합니다.
[주의]remi-php7x의 x는 php버전에 맞는 저장소(Repository) remi-php74를 입력해야 합니다.
$ sudo yum install php-intl --enablerepo=epel,remi,remi-php7x
....중간 생략....
---> Package php-intl.x86_64 0:7.4.33-2.el7.remi will be installed
....중간 생략....
Total download size: 24 M
Is this ok [y/d/N]: y
....중간 생략....
Installed:
gd3php.x86_64 0:2.3.3-7.el7.remi php-intl.x86_64 0:7.4.33-2.el7.remi
Dependency Installed:
libicu71.x86_64 0:71.1-2.el7.remi
Dependency Updated:
php.x86_64 0:7.4.33-2.el7.remi
....중간 생략....
Replaced:
gd-last.x86_64 0:2.2.5-10.el7.remi
Complete!
실행 결과 로그는 여기를 참조하십시오.
설치 후 확장 모듈 확인하기
다음 명령으로 확장 모듈 intl의 파일이 인스톨 되어있는 것을 확인합니다.
$ sudo find / -name intl.so
/usr/lib64/php/modules/intl.so
/usr/lib64/php-zts/modules/intl.so
다음 명령으로 확장 모듈 intl이 php의 환경 설정에 존재하는 것을 확인합니다.
$ php --ini
....중간 생략....
/etc/php.d/20-intl.ini,
....중간 생략....
/etc/php.d/30-xmlrpc.ini,
/etc/php.d/40-imagick.ini
/etc/php.d/40-zip.ini
다음 명령으로 확장 모듈 intl의 php의 환경 설정 내용을 확인합니다.
$ cat /etc/php.d/20-intl.ini
; Enable intl extension module
extension=intl
서버 재기동 & 적용 결과 확인
모듈을 적용하기 위해 서버를 재기동합니다.
$ sudo systemctl restart httpd
https://워드프레스호스트명/phpinfo.php를 사용하여 php 환경 정보에 intl가 존재하는 것을 확인합니다.