![[EC-CUBE4] 원라이너/필요한 PHP 확장 라이브러리 설치](/tutorial-cover/post/[EC-CUBE4] 원라이너 필요한 PHP 확장 라이브러리 설치.png)
[EC-CUBE4] 원라이너/필요한 PHP 확장 라이브러리 설치
2022-10-06 last update
6 minutes reading MySQL ubuntu18.04 AmazonLinux2 PHP7 EC-CUBE4환경
배경
ECCUBE4 공식 시스템 요구 사항에는 필요한 PHP 라이브러리가 나열되어 있지만 "어떻게 설치합니까?"라는 세부 사항은 포함되어 있지 않습니다.

아래 표에 나와 있듯이 설치할 때 필요한 패키지 이름은 라이브러리 이름과 다를 수 있으며 PHP 버전이 필요하거나 불필요하거나 일관성이 없습니다. 게다가 상기의 일람에는 「표준 인스톨하면 유효하게 되고 있다(=추가 인스톨 불필요)」도 포함되어 있습니다.
전부를 가지런히 할 때까지, 이랏으로 한 번거로웠습니다. 이런 기계적인 작업은 빨리 코피페로 끝내고 싶다는 사람이 많다고 생각하기 때문에 삼가해 두었습니다. 이용하십시오.
결론
결론부터 쓰면 다음을 실행하면 OK입니다.
PHP 본체(7.2)
우분투 18.04의 경우
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.2
Amazon Linux 2의 경우
amazon-linux-extras install php7.2
확장 모듈
우분투 18.04의 경우
sudo apt install php7.2-mysql php7.2-common php7.2-mbstring php7.2-json php7.2-xml php7.2-zip php7.2-curl php7.2-intl php-apcu php7.2-opcache php7.2-sqlite
Amazon Linux 2의 경우
yum install php-mysql php-common php-mbstring php-json php-xml php-zip php-cURL php-intl php-apcu php-opcache php-sqlite
SQLite 확장 모듈 (php7.2-sqlite php-sqlite)을 포함하는 이유
ECCUBE 명령줄 설치 시 SQLite가 자동으로 사용되기 때문입니다. 설치하지 않으면 데이터베이스 작성 프로세스에서 다음 실행 오류가 발생합니다.
Script bin/console doctrine:database:create handling the installer-scripts event returned with error code 1
사용하도록 설정된 PHP 모듈 확인
$ php -m
부록
라이브러리 이름과 (설치시 사용) 패키지 이름
확장명
필수 또는 권장
패키지 이름
mysqli
필수
php7.2-mysql
pdo_mysql
필수
php7.2-mysql
pdo
필수
php7.2-common
phar
필수
php7.2-common
mbstring
필수
php7.2-mbstring
zlib
필수
디폴트로 유효 스스로 컴파일하는 경우--with-zlib
를 지정
ctype
필수
php7.2-common
session
필수
기본적으로 사용
JSON
필수
php7.2-json
xml
필수
php7.2-xml
libxml
필수
기본적으로 사용
OpenSSL
필수
디폴트로 유효 스스로 컴파일하는 경우--with-openssl
를 지정
zip
필수
php7.2-zip
cURL
필수
php7.2-curl
fileinfo
필수
php7.2-common
intl
필수
php7.2-intl
hash
추천
기본적으로 사용
APCu
추천
php-apcu
ZendOPcache
추천
php7.2-opcache
각 라이브러리 이름 (php extensions)의 세부 사항 및 설치 절차
위의 표에서 옵션을 지정하고 직접 PHP를 컴파일 할 때의 옵션 지정에 대해 설명하고 있습니다. 안에 링크가 표시되므로 거기를 클릭하면 물론 확인할 수 있습니다.
PHP 공식 매뉴얼
결론부터 쓰면 다음을 실행하면 OK입니다.
PHP 본체(7.2)
우분투 18.04의 경우
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.2
Amazon Linux 2의 경우
amazon-linux-extras install php7.2
확장 모듈
우분투 18.04의 경우
sudo apt install php7.2-mysql php7.2-common php7.2-mbstring php7.2-json php7.2-xml php7.2-zip php7.2-curl php7.2-intl php-apcu php7.2-opcache php7.2-sqlite
Amazon Linux 2의 경우
yum install php-mysql php-common php-mbstring php-json php-xml php-zip php-cURL php-intl php-apcu php-opcache php-sqlite
SQLite 확장 모듈 (php7.2-sqlite php-sqlite)을 포함하는 이유
ECCUBE 명령줄 설치 시 SQLite가 자동으로 사용되기 때문입니다. 설치하지 않으면 데이터베이스 작성 프로세스에서 다음 실행 오류가 발생합니다.
Script bin/console doctrine:database:create handling the installer-scripts event returned with error code 1
사용하도록 설정된 PHP 모듈 확인
$ php -m