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"

에러 메세지의 원인

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

add_action( 'wp_enqueue_scripts', 'custom_scripts', 9999 );

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

add_action( 'wp_enqueue_scripts', 'child_enqueue_styles', 15 );

문제 해결

오랜만에 서버가 제대로 작동하는지 확인하면서 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 파일을 만들면서 상기 커스텀 코드를 적용했는데요. 굳이 필요한 컷텀 코드는 아니었나 봅니다.

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

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

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

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

아래 이미지를 클릭해 등록할 수 있습니다.

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

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

저는 2016년부터 Vultr 서버를 사용했는데요. 지금까지 잘 사용해 오고 있습니다. 아래 사용기도 참고해 보세요.

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

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

Vultr 가상서버호스팅의 새상품 High Frequency 사용기

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

해외 가상서버호스팅(VPS)이 국내 호스팅보다 빠르다? – 아이비호스팅과 해외 가상서버호스팅 VULTR간 비교

사이트 운영을 위한 안내 – 웹서버 세팅에서 워드프레스 설치까지(우분투 17.10, NGINX 1.13.6, Marian DB 10.2, PHP7.2)

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

20년간 FGCG 마케팅과 전자제품 상품기획 경험을 기반으로 다양한 분야의 마케팅 및 경영 사례 분석에 관심을 가지고 있습니다. 아울러 IT 등 트렌드 분석과 빠르게 변화하는 뉴스에서 얻을 수 있는 인사이트를 분석해 나누고 싶습니다. 개인적으로 사진에 관심에 많아 소소한 일상의 따뜻함을 담고 있습니다.

0 Comments
Inline Feedbacks
View all comments