私の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 Webサーバーがあります。私の設定ファイルが古いようです。
しかし見てみると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
。アンインストールして再インストールすると、これらの不一致が再同期される可能性があります。