PHP 에러 대응 – PHP Warning: call_user_func_array() expects parameter 1 to be a valid callback

Updated on 2020-07-04 by

워드프레스 운영을 위해 다양한 커스텀 코드를 적용하다보면 PHP 에러를 만나게 됩니다.

이러한 PHP 에러중에는 치명적인 것도 있지만 대부분은 워드프레스 사이트가 다운될 정도로 심각한 경우가 아니므로 무시하게 마련입니다.

그러나 PHP 에러 대응이 적절하지 않으면, 서버에서는 끊임없이 서버 에러 메세지를 발송하면서 궁극적으로 시스템 자원을 약화시키는 경우가 있습니다.

여기에서는 대수롭지 않게 넘기기 쉽운 PHP 에러 중 PHP Warning: call_user_func_array() expects parameter 1 to be a valid callback에 대해서 알아봅니다.

이 글은 PHP 에러 대응 사례-PHP Warning: call_user_func_array() expects parameter 1 to be a valid callback를 기반으로 조금 내용을 수정한 것입니다.

PHP 에러 메세지 사례

오늘 소개하는 PHP 에러 대응 -PHP Warning: call_user_func_array() expects parameter 1 to be a valid callback도 이러한 예의 하나인데요.

보통 이런 에러가 발생하면 아래와 같은 에러 메세지를 보냅니다. 이는 서버의 error.log에서 발견할 수 있습니다.

웹서버로 NGINX를 사용한다면 /var/log/nginx 폴더에 있는 error.log에서 확인할 수 있습니다. 하나의 실예를 들기 위해 에러 메세지를 그대로 가져와 봤습니다.

2020/07/04 13:33:50 [error] 2739157#2739157: *149426 FastCGI sent in stderr: "PHP message: PHP Warning:  call_user_func_array() expects parameter 1 to be a valid callback, function 'child_enqueue_styles' not found or invalid function name in /home/사이트 이름/wp-includes/class-wp-hook.php on line 287", client: 220.64.101.2, server: 사이트 이름.com, request: "GET /571441/ HTTP/1.1", host: "사이트 이름.com"Code language: PHP (php)

에러 메세지의 원인

이러한 메세지가 나오는 것은 대부분 워드프레스 차이드 테마의 hunctions.php에 다음과 같은 형식의 커스텀 코드가 있는 경우가 발생한다고 합니다.

add_action( 'wp_enqueue_scripts', 'custom_scripts', 9999 );Code language: PHP (php)

저의 경우에는 다음과 코드가 있었습니다.

add_action( 'wp_enqueue_scripts', 'child_enqueue_styles', 15 );Code language: PHP (php)

문제 해결

오랜만에 서버가 제대로 작동하는지 확인하면서 NGINX 웹서버가 끊임없이 이런 메세지를 내고 있다는 것을 발견하고 토요일 오전 내내 구글링을 통해서 문제 해결 방법을 찾았습니다.

그러나 좀처럼 이 문제 해결 방안을 찾을 수 없었는데 근 5시간이상의 구글링끝에 이에 대한 해결책을 제시하는 글을 찾았습니다.

Warning: call_user_func_array() expects parameter 1 to be a valid callback, function ‘custom_scripts’ not found or invalid function name in /home/.sites/149/site5056863/web/web/wp-includes/class-wp-hook.php on line 286

위 글에 따르면 문제 원인이 커스텀 코드에서 발생하고 있기 때문에 문제 해결은 이 커스텀 코드를 삭제함으로 가능합니다.

저의 경우 차일드 테마를 별도로 만들지 않고 MU-PLUGINS에서 별도 php 파일을 만들면서 상기 커스텀 코드를 적용했는데요. 굳이 필요한 컷텀 코드는 아니었나 봅니다.

이 커스텀 코드 삭제 후 별다른 이슈가 없었고, 오히혀 에러 메세지는 사라졌습니다.

새롭게 뉴스레터를 시작했습니다.

1️⃣ 주식 등 투자 정보 : 기업 분석, IB 투자의견 등 투자 관련 내용
..... 테슬라 실적 및 IB들의의 테슬라 투자의견
2️⃣ 사례 및 트렌드 : 사례연구와 트렌드 관련 괜찮은 내용
.....유튜브와 경쟁대신 구독 전환한 비디오 플래폼 비메오 사례

서울에 생긴 Vultr 서버 100$ 프로모션

안녕하세요?
새로운 사이트 구축을 위한 신규 서버를 고민하신다면 , 서울 리젼이 생겨 더욱 빨라진 Vultr 서버를 Vultr 100$ 프로모션으로 이용해 보세요.

아래 프로모션 코드 링크를 통해 Vultr에서 서버 구축 후 1달 이상 사용 및 $25이상 결제 時 추가 100$을 주는 프로모션입니다.

Vultr는 서울에도 리젼이 있어 매우 빠르고, 아마존 웹 서비스(AWS)보다 성능이 높으며 가장 가성비가 뛰어납니다.

거기다 사용자 UI도 좋고, 15개까지 스냅샷을 무료로 제공하기 때문에 관리하기 좋습니다. 그리고 지금 100$ 프로모션처럼 가격적인 메리트도 있습니다.

우분투 20.04와 PHP 8 기반 워드프레스 설치 방법

가상 서버를 운영하고픈 勇者에게 전하는 가상 서버 운영 입문 노하우 – Vultr 가상서버호스팅(VPS)를 중심으로

워드프레스 최적화를 위한 18개월간의 고민, 그 노하우를 담다.

도쿄 리젼과 비교해 본 Vultr 서울 리젼 사용기

가성비가 뛰어난 Vultr 가상서버호스팅(클라우드호스팅,VPS) 사용기

Subscribe
Notify of
guest
0 Comments
Oldest
Newest
Inline Feedbacks
View all comments