워드프레스를 직접 설치 할 경우 필요한 것은 세 가지, PHP, 데이터베이스(mySQL 등), 웹서버(아파치 등)입니다.
이 블로그는 데이터 베이스는 [MariaDB] 10.6.14, 웹서버로는 [Nginx] Mainline 1.25.1를 사용하고 있습니다.
데이터 베이스나 웹서버는 별 문제가 없지만, 워드프레스는 PHP 기반이기 때문에 PHP 버전을 가립니다.
[워드프레스 PHP 호환성 문서]에서 확인 할 수 있듯, 정식으로 지원하는 PHP 버전은 7.4입니다.
PHP 7.4 사후 지원은 계속 이어지고 있지만, 나온지가 좀 오래되었고 [AVIF 이미지] 처리를 하지 못하는 등의 아쉬운 점(문제…라고 할 것 까지는 아닌 것 같습니다)이 있습니다.
PHP 8은 속도가 개선되고 AVIF 이미지를 처리 할 수 있는 등의 장점이 있으니 7.4 대신 8을 깔면 어떨까…
하는 생각을 당연히 할 수 밖에 없는데요…
PHP 8을 설치하여 테스트를 해 보면 워드프레스 자체의 작동은 잘 됩니다.
하지만 7.4에서 8로 넘어가면서 삭제된 명령어들이 좀 있고, 명령어는 같아도 전과 같이 작동하지 않는 것들도 있어 플러그인 사용이 대단히 까다로워집니다.
워드프레스 운영에 있어 보안 및 편의성을 제공하는 필수라고 해야 할 플러그인들이 몇몇 있는데, 이들 플러그인이 에러 메시지와 함께 제대로 작동하지 않게 됩니다.
워드프레스 구조상 테마도 PHP로 돌아가기 때문에 플러그인 뿐 아니라 테마도 제대로 작동하지 않을 수 있습니다.
PHP 호환 페이지에서 볼 수 있지만 PHP 8 이상은 “compatible with exceptions”이라고 적어 놓았죠.
리눅스 환경이라면 도커 등을 이용해서 간단히 테스트 해 볼 수 있으니, 모험을 하기 전 반드시 테스트를 해 보는 것이 좋을 것입니다.
워드프레스의 기능 중 에러 메시지를 출력하는 디버그 모드가 있으므로, 이를 이용하여 하드 코딩을 좀 거듭하면 문제 없이 쓸 수 있는 것도 같지만(그렇게 쓰는 사람들이 더러 있는 것 같습니다)…
유지 보수가 까다로워지고 취미 프로젝트면 모를까 공수 대비 편익이 거의 없다고 생각합니다.
데이터베이스로 사용하고 있는 MariaDB 역시 최신 버전인 11.x 대신 [10.6.14]를 유지하고 있는 것도 같은 이유에서입니다.
MariaDB 11에서 작동은 되는데, 에러를 몇 번 만나고 나서 안전 제일을 중얼거리며 10.x로 되돌렸습니다.
웹서버 Nginx는 최신 버전으로 돌려도 큰 문제가 없는 것 같습니다(이 부분은 뭐 당연하다면 당연하겠고요).
아파치의 .htaccess가 보안에 취약하다는 지적들이 많아 최근에는 Ngnix 사용자들이 제법 많아졌습니다.
이 블로그는 LEMP Stack(Linux+Nginx+MariaDB+PHP)을 선택 했지만, MySQL과 아파치 쪽이 오래되기도 했고 그만큼 쌓여있는 문서나 Troubleshooting도 찾기 쉽습니다.
초보자라면 아파치+MySQL을 이용하는 것도 좋은 선택이라고 봅니다.
국내 호스팅 업체들은 대부분 아파치 서버라서 호스팅을 통해 워드프레스를 돌린다면 싫어도 아파치를 쓸 수 밖에 없겠지만요.
윈도우 서버도 최근에는 굉장히 좋아졌다고 하니 굳이 리눅스를 고집 하지 않아도 될 것 같습니다.
윈도우 서버의 비싼 라이센스 문제는 대학생이라면 피해갈 수 있기도 하고.
기회가 되면 워드프레스에 관련된 글을 더 많이 올려보도록 하겠습니다.