3

私は Arch Linux を使用しており、スクリプトをテストするために複数の PHP バージョンを構成しようとしています。

私は次の 3 つのツールに基づいています。

最初に、Apache と PHP (およびそれらの統合パッケージ) を次のようにインストールしましたpacman

# pacman -S php apache php-apache

次に、リンクにツールをインストールするための指示に従いました。すべて正常に動作しています。

ツールphpenv-installから2つのバージョンをインストールすることができました。php-build私はこのようなものを得ました:

-- ~
|---.phpenv
  |---lib
  |---versions
    |---5.5.1
    |---5.4.17
  |--- (some more folders)

php-versionCLI 環境では、すべて正常に動作しています。2 つのバージョンを次のように簡単に切り替えることができます。

$ php-version 5.5.1
$ php --version
PHP 5.5.1 (cli) (built: Aug  5 2013 22:54:47) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend OPcache v7.0.2-dev, Copyright (c) 1999-2013, by Zend Technologies
    with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans

$ php-version 5.4.17
$ php --version
PHP 5.4.17 (cli) (built: Aug  5 2013 23:19:44) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
    with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans

問題は、これを apache と統合することです。

この投稿の冒頭で述べたように、Arch リポジトリから PHP をインストールする必要もありましたが、これは偶然にもバージョン 5.4.17 です。このインストールは Apache で正常に動作しています。

readmephp-envには、次の手順があります。

phpenv は Apache apxs ライブラリの動的切り替えをサポートしており、install はバージョン libexec フォルダーの下に Apache 用の libphp5.so 共有ライブラリをビルドしてインストールします。

phpenv global を呼び出してグローバル PHP バージョンを表示または変更すると、適切なリリース ビルドのリンクが ~/.phpenv/lib/libphp5.so の下に作成されます。このリンクは Apache の LoadModule php5_module ディレクティブに使用でき、変更時に Apache を再起動する必要があります。

問題は、ディレクトリに名前が付けられたファイルまたはシンボリックリンクがlibphp5.soフォルダー全体libにもないことです。.phpenv

$ find ~/.phpenv -name libphp5.so

何も返しません。

英語が母国語ではないためか、上記の引用の 2 番目の段落を解釈するのに問題があります。

4

1 に答える 1