계속 오류가 발생합니다: PHP 시작 - libphp5.so가 누락되었습니까? PHP는 Apache에서 잘 돌아가는 것 같습니다.

계속 오류가 발생합니다: PHP 시작 - libphp5.so가 누락되었습니까? PHP는 Apache에서 잘 돌아가는 것 같습니다.

내 Linux 배포판은 Arch Linux입니다. mail()PHP 함수를 사용하여 이메일을 보내 려고 할 때 처음으로 이 오류를 발견했습니다 . mail()명령줄에서 호출하면 이메일을 보내지만 사용할 때는 보내지 않는 간단한 mail-test.php 파일로 테스트했습니다.http://localhost/mail-test.php. 두 번 모두 동일한 오류가 발생했지만 명령줄을 사용하여 이메일을 보냈습니다.

오류가 발생합니다.

PHP 시작: 동적 라이브러리 '/usr/lib/php/modules/libphp5.so'를 로드할 수 없습니다. - /usr/lib/php/modules/libphp5.so: 공유 객체 파일을 열 수 없습니다. 알 수 없는 위치에 해당 파일이나 디렉터리가 없습니다. # 0

사용하면 ls /usr/lib/php/modules파일이 존재하지 않으며 검색 시스템 결과가 /usr/lib/httpd/modules/libphp5.so존재함을 나타냅니다.

php-apache가 설치되었고 apache가 PHP 사이트를 제대로 제공하고 있습니다. (포함된 테스트 PHP 파일을 사용하여 테스트 <?php phpinfo(); ?>)

하지만 이 오류의 원인을 찾을 수 없는 것 같습니다. 도움을 주시면 감사하겠습니다. 감사합니다!

답변1

Arch Linux 웹 서버가 있습니다. 내 구성 파일이 오래된 것 같습니다.

그러나 살펴보면ArchWiki Apache HTTP 서버 페이지, "PHP"라는 섹션은 작동하려면 /etc/httpd/conf/httpd.conf두 가지 모두를 일부 변경해야 함을 의미합니다 . /etc/php/php.ini내가 당신의 입장이라면 아마도 이렇게 할 것이고 pacman -R php-apache, 어쩌면 이렇게 한 pacman -R apache다음 두 패키지를 모두 다시 설치할 수도 있습니다. 생성한 파일의 복사본을 저장하고 pacman문제가 있는 콘텐츠를 정리하세요.

재설치 후 ArchWiki 페이지의 안내에 따라 /etc/httpd/conf/httpd.conf수정하겠습니다. /etc/php/php.ini그런 다음 systemctl start httpd문제가 사라졌는지 확인하십시오. 일치하지 않는 구성 파일이 있거나 사용자의 LD_LIBRARY_PATH 에 문제가 있는 것 같습니다 http. 제거하고 다시 설치하면 이러한 불일치가 다시 동기화될 수 있습니다.

관련 정보