WP Rocket은 유료 워드프레스 캐시 플러그인으로 사이트 속도 개선에 도움이 될 수 있습니다. 워드프레스에는 다양한 무료 플러그인이 있기 때문에 굳이 WP Rocket과 같은 유료 플러그인을 설치할 필요는 없지만, 우리나라에서는 이 플러그인을 설치한 사이트들이 제법 많은 것 같습니다.
워드프레스로 제작된 번역업체 사이트에서 500 Internal Server Error 문제가 발생하여 문제 해결 의뢰가 들어왔습니다. 살펴보니 사이트에 접속하면 내부 서버 오류가 발생하지만 오류 로그(Error Log)를 체크해 보니 아무런 에러 메시지가 기록되지 않았습니다. 여러 가지를 확인해 보니 WP Rocket 플러그인 때문에 .htaccess 파일이 손상되어 나타나는 문제였습니다.

워드프레스 WP Rocket 플러그인으로 인한 500 Internal Server Error 문제 해결
워드프레스에서 500 Internal Server Error는 다양한 원인으로 발생할 수 있습니다.

이 오류가 발생하면 먼저 에러 로그를 체크하여 문제를 일으키는 원인을 파악해야 합니다. 많은 메모리 부족으로 인해 이 오류가 발생할 수 있고, 플러그인 충돌로도 자주 발생합니다.
특히 카페24에서 엘리멘터(Elementor) 등 무거운 플러그인을 사용할 때 메모리 부족으로 인해 500 오류가 발생하는 경우가 종종 있습니다.
워드프레스 메모리 부족 문제 해결 방법 (feat. 카페24) - 워드프레스 정보꾸러미
카페24에서 호스팅되고 있는 워드프레스 사이트에서 우커머스 옵션 상품을 편집 후에 저장하면 저장이 되지 않는 문제를 최근 접했습니다. 카페24에 이 문제를 문의하여 메모리가 부족하여 나타
www.thewordcracker.com
간혹 오류 로그를 체크해 보아도 아무런 에러가 기록되어 있지 않은 경우도 있습니다. 에러 로그에 아무런 에러 메시지가 없으면 문제의 원인을 파악하는 것이 쉽지 않을 수 있습니다.
최근 번역업체 홈페이지에 500 내부 서버 에러가 발생하여 살펴보니 오류 로그에 아무런 메시지가 없어서 원인을 찾는 데 조금 시간이 걸렸습니다.
.htaccess 파일을 체크해 보니 코드가 제대로 있어서 의심을 하지 않았지만, 다시 체크하여 자세히 살펴보니 맨 끝부분이 조금 이상했습니다.
<IfModule mod_deflate.c>
# Active compression
SetOutputFilter DEFLATE
# Force deflate for mangled headers
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15}
아마도 .htaccess 파일이 저장되는 과정에서 오류가 발생했는지 몰라도 코드 끝부분이 잘려서 문제가 발생했던 것입니다.
위와 같이 불완전하게 끝난 코드를 다음과 같이 수정하니 문제가 해결되었습니다.
<IfModule mod_deflate.c>
# Active compression
SetOutputFilter DEFLATE
# Force deflate for mangled headers
<IfModule mod_setenvif.c>
SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15}|-{15})$ HAVE_Accept-Encoding
</IfModule>
<IfModule mod_headers.c>
Header append Vary Accept-Encoding
</IfModule>
</IfModule>
가장 안전한 방법은 # Gzip compression 이하를 전부 삭제하는 것입니다. (WP Rocket + 서버 레벨 Gzip/Brotli가 있는 경우 전혀 문제 없음)
WP Rocket이 이런 깨진 .htaccess 코드를 남기는 경우는 흔하지 않지만, 다음 상황에서 실제로 발생할 수 있다고 합니다.
- WP Rocket 설정 저장 중 서버 오류 / 타임아웃
- 디스크 I/O 문제 또는 권한 문제
- 플러그인 업데이트 중 중단
- .htaccess 파일이 FTP/에디터에서 동시에 열려 있었던 경우
- LiteSpeed 서버에서 mod_deflate 미지원 환경
문제가 재발될 가능성을 줄이기 위해 WP Rocket에서 Gzip 설정을 비활성화하는 것도 고려해 볼 수 있습니다.
이런 현상은 드물지만 플러그인에서 .htaccess 파일을 수정하는 과정에서 불완전하게 수정되어 문제가 발생한 것으로 보입니다.
WP Rocket은 유료 버전으로 매년 갱신해야 하므로 개인이 사용하기에는 부담이 될 수 있습니다. 요즘에는 LiteSpeed Cache와 같은 괜찮은 무료 플러그인이 있으므로 무료 플러그인을 사용하는 것도 무난합니다.
클라우드웨이즈(Cloudways)를 이용하는 경우에는 Breeze 캐시 플러그인이 기본적으로 탑재되어 있으며 모바일 캐싱 기능도 활성화할 수 있습니다.
캐시 플러그인을 설치해도 사이트 속도가 느리다면 무거운 테마 대신 가벼운 테마를 설치하고, 엘리멘터나 슬라이더 레볼루션 등과 같은 무거운 플러인의 사용을 자제하고, 이미지를 압축하여 크기를 줄여서 업로드하는 등 최적화를 시도할 수 있습니다. 이외에도 클라우드웨이즈와 같은 호스팅을 이용하면 속도가 빠를 수 있지만, 기본적으로 사이트를 최적화하여 가볍게 만드는 것이 중요합니다.
참고로 캐시 플러그인을 설치한 경우 사이트 변경 사항이 곧바로 적용되지 않을 수 있습니다. 그런 경우 캐시를 삭제하면 보통 문제가 해결됩니다.
https://avada.tistory.com/3859
워드프레스 캐시 플러그인 캐시 삭제 방법 (Breeze, LiteSpeed Cache, WP Super Cache, WP Rocket 등)
워드프레스 캐시 플러그인을 설치하면 사이트 로딩 속도가 획기적으로 빨라져 사용자 경험과 SEO 성능이 크게 향상됩니다. 하지만 캐시 기능 활성화 시 새 글 발행, 페이지 수정, 테마 변경 등의
avada.tistory.com
마치며
이상으로 워드프레스 WP Rocket 캐시 플러그인에 의한 .htaccess 파일 손상 때문에 발생한 500 Internal Server Error 해결에 대하여 살펴보았습니다. 실제 500 오류는 다양한 원인으로 발생하므로 먼저는 오류 로그를 체크하여 문제의 정확한 원인을 파악하는 것이 중요합니다.
해당 번역업체 홈페이지의 경우 WP Rocket 때문에 문제가 발생하여 .htaccess 파일에서 문제의 코드를 수정하니 해결되었습니다. 여담이지만, AI 등장 이후 번역 서비스 산업 자체가 크게 위축되지 않았나 생각됩니다. 저는 20년 이상 영한 전문번역가로 활동하면서 생계를 이어왔지만, 코로나 시기가 시작되면서 번역 의뢰가 크게 줄고 AI의 발전으로 인해 인공지능으로 번역하는 시도가 활발히 이루어지면서 저는 번역을 그만 두었습니다. 이런 어려운 시기에 아직도 우리나라에서 번역업체를 운영하는 것을 보니 진정으로 존경심마저 드네요.
👉 워드프레스나 웹호스팅 관련 문제 해결에 어려움을 겪는 경우 여기에서 서비스(유료)를 의뢰하실 수 있습니다.
참고
https://avada.tistory.com/3826
클라우드웨이즈(Cloudways)에서 케미클라우드(ChemiCloud)로 워드프레스 이전 작업
최근 몇 년 사이 우리나라에서 워드프레스 블로그 운영에 클라우드웨이즈(Cloudways)가 많이 이용되고 있습니다. 클라우드웨이즈는 규모가 큰 사이트나 여러 개의 사이트 운영에 적합합니다. 블로
avada.tistory.com
https://avada.tistory.com/3858
카페24 워드프레스 멀티사이트 오류가 간헐적으로 발생하는 문제
모델하우스 분양을 소개하는 사이트들을 워드프레스 멀티사이트로 구성하여 운영하던 클라이언트께서 수시로 사이트 에러가 발생하는 문제로 연락을 해오셔서 사이트를 살펴보았습니다. 카페
avada.tistory.com