2016-10-15 12 views
1

私はRemi RepositoriesのPHPバージョンのコレクションをインストールしましたが、質問自体は無視されるかもしれませんが、私が試した処理を理解するために残しました。htaccessから複数のPHPバージョン用にApacheを設定する方法

彼らは、コマンドラインから正常に動作しますが、私は、Apache 2でそれらを使用したい(httpdのはFedora 24の)、のように複数の仮想ホストを実行している:私はVirtualHostのconfのファイルを作成している

php54.test 
php55.test 
php56.test 
php70.test 
php71.test 

それぞれがうまく動作しています。

それぞれの対応するPHPバージョン(それに応じてServerNameを示唆します)を実行したいのですが、各仮想ホストからPHPを読み込む方法が見つかりません。 私はモジュールとしてそれらをロードするための対応レミlibphpX.soを見つけることができませんでした:

<VirtualHost *:80> 
    ServerName php54.test 
    DocumentRoot /var/www/php54 

    #SOMETHING LIKE THIS... 
    LoadModule php??_module  modules/libphp??.so 

</VirtualHost> 

私が持っている、これはニュース、私はhtaccessファイルからPHPのバージョンを変更することができますし、私ができる共有ホスティングではありませんこのような何か:

AddHandler application/x-httpd-php54 .php 
AddHandler application/x-httpd-php55 .php 
AddHandler application/x-httpd-php56 .php 
AddHandler application/x-httpd-php7 .php 
AddHandler application/x-httpd-php71 .php 

を私は今、ダミーのように見えるかもしれないが、どのように私は、利用可能な複数のPHPのバージョンを持つため、同じ.htaccessの切り替えを行うことができますか?

私は、おそらく最もよく一致する答えを見つけるためにGoogleで何をどのように検索するか分からないでしょう。

答えて

4

複数のバージョンのmod_phpを使用することはできません。

よりよい解決策は、FCGIサーバにでSetHandlerをバーチャルホスト毎に使用して、PHP-FPM(FastCGIプロセスマネージャ)を使用することである。

SetHandler "proxy:fcgi://127.0.0.1:9070" 

又は(UNIXドメインソケットを使用して)

SetHandler "proxy:unix:/var/opt/remi/php70/run/php-fpm/www.sock|fcgi://localhost" 

これはこの記事で説明されています:My PHP workstation

+0

彼の記事で@Remi Colletが提示した解決策は、魅力のように機能します! –

関連する問題