Taking baby-developer steps

wordpress 설치 중 에러 해결 - Your PHP installation appears to be missing the MySQL extension which is required by WordPress. 본문

CS 지식/서버 구축

wordpress 설치 중 에러 해결 - Your PHP installation appears to be missing the MySQL extension which is required by WordPress.

Surin Lee 2023. 3. 22. 12:31

3tier 구조 중 wordpress-php 서버를 만드는 도중, alpine:3.17 기반 컨테이너 내부에서 wp core install command로 wordpress를 설치하려는데 다음과 같은 에러가 발생했다.

이 에러는 WordPress가 MySQL database에 connect 하기 위해 "필요한 extension"을 php server가 가지고 있지 않다는 의미라고 한다. (https://kinsta.com/knowledgebase/php-installation-missing-mysql-extension-required-by-wordpress)

 

1. php, wordpress의 버전을 확인한다.

최신 버전의 php와 오래된 버전의 wordpress를 사용하는 경우 이와같은 문제가 발생 할 수 있다고 한다. 예시로, php 7.0은 MySQL 확장을 더 이상 사용하지 않기 때문이다. php 7+에는 더이상 WordPress가 찾고 있는 MySQL 확장이 포함되어 있지 않으므로, WordPress를 최신버전으로 업그레이드 해 볼것.

php wp --info를 통해 php서버를 만들고 있는 컨테이너에 install 된 php와 wp의 버전 정보를 확인했다.(wp --info 커맨드를 실행해도 같은 결과가 출력 된다.)

 

php는 최신 버전인 8.1.17인데, wp의 버전이 낮아서 일어나는 오류라고 생각이 들었다. WordPress 최신버전을 alpine os에서 다운 받는 법을 구글링 했는데, 생각 보다 명확한 방법이 나오지 않았다. 너무 예전 글이거나 이미 사용했던 깃헙 링크에서 wget해 오는 방법 이외엔 보지 못했다.

 

2. php-mysqli 설치

-->생각을 조금 바꿔서, 구 버전 wp에서는 mysqli 확장모듈이 필요한데, php 7이상의 버전에서는 해당 모듈이 포함되어 있지 않을 뿐이니, 구 버전 wp를 그대로 쓰되 php-mysqli를 install 해야겠다고 생각이 들었다.

php-mysqli를 설치 하고 나니, wp core download에 성공했다!

 

현재 php 서버가 있는 컨테이너에는 php 관련해서, php, php-fpm, php-phar, php-mysqli 만 install 된 상태이다.

앞으로도 wp와 php의 버전 차이에 의해 더 필요한 모듈이 생길 때마다 install할 예정이다.

Comments