web-dev-qa-db-ja.com

Apacheの読み込みPHPモジュール-未定義のシンボル:unixd_config

RedHat6.5で新しいWebサーバーを構成しています。

次のように、Apache2.4.6でphp5モジュールを有効にしようとしています。

LoadModule php5_module /usr/path/to/libphp5.so
AddType application/x-httpd-php .php

Apacheでhttpd.confファイルをチェックすると、LoadModuleの行について次のエラーが発生します。

Cannot load /usr/path/to/libphp5.so into server: /usr/path/to/libphp5.so: undefined symbol: unixd_config

2つのPHPバージョンがインストールされているために問題があるのではないかと思います。Apacheが使用する必要があるのはエイリアスphp55ですが、そのための構成は何ですか?

3
Fractaliste

最後に私は使用します:

<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>
PHPIniDir "/path/to/php/lib"

そして、私は自分でlibphp5.soを作成します。

0
Fractaliste

Apache APIが2.2から2.4に変更され、unixd_configの名前がap_unixd_configに変更されました( Apiの2.2から2.4への変更 を参照)。 Apache 2.4と互換性のあるphpモジュールバージョンが必要であるか、Apache2.2のままである必要があります。

3
Zimmi

正しい方法は、次のパッケージをインストールすることです。ここでphp55を目的のバージョンに置き換えます。ソフトウェアはRHSoftwareCollectionから取得されます。このパッケージには、Apache 2.4にphpのサポートを追加するモジュール(mod_phpと呼ばれることが多い)が含まれています

yum install rh-php55-php

0
Dejan