운영체제의 EOS로 업그레이드를 진행하는 경우 서버를 교체하며 EOS 프로그래밍 언어까지 업그레이드 하면 좋지만
여러가지 이유로 프로그래밍 언어는 유지하고 OS와 어플리케이션 버전만 업그레드 하는 경우가 있다
이번 경우도 운영체제를 업그레이드하며 apache 버전은 2.2 -> 2.4로 업그레이드 진행했지만 php 버전은 5.2 버전을 유지해야 하는 상황에 발생한 오류 처리 내용이다.
오류 내용
httpd: Syntax error on line 168 of /usr/local/apache/conf/httpd.conf: Cannot load modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: undefined symbol: unixd_config
조치 방법
apache 2.4로 버전업하면서 unixd_config 심볼이 ap_unixd_config 변경되어 발생하는 문제로
php 소스 컴파일전 해당 내용을 수정하고 컴파일을 해야한다.
unixd_config -> ap_unixd_config 수정
vi /usr/local/srcphp-5.2.17/sapi/apache2handler/php_functions.c
>line 386
#if !defined(WIN32) && !defined(WINNT) && !defined(NETWARE)
AP_DECLARE_DATA extern unixd_config_rec ap_unixd_config;
#endif
>line 417
#if !defined(WIN32) && !defined(WINNT) && !defined(NETWARE)
snprintf(tmp, sizeof(tmp), "%s(%d)/%d", ap_unixd_config.user_name, ap_unixd_config.user_id, ap_unixd_config.group_id);
php_info_print_table_row(2, "User/Group", tmp);
#endif
'리눅스' 카테고리의 다른 글
ps aux 명령어 STAT 상태 (0) | 2024.03.13 |
---|---|
ubuntu 네트워크 카드 추가 후 재부팅 시 인터페이스 변경 오류 관련 (0) | 2024.02.27 |
ubuntu apt update 오류 처리 방법 (0) | 2024.02.26 |