web-dev-qa-db-ja.com

PHP Apache2が使用するバージョンを変更するには?

Ubuntu 10.04、MySQL 5.1、Apache 2.2、およびPHP 5.2/5.3:

間違ったバージョンのPHPをCRMアプリケーションに使用していることを発見しました。Apache2が使用しているものを伝える単純なphpinfo()スクリプトを作成する方法を見つけたら、_php.ini_を変更して、WebサーバーがPHPを使用するように変更しました。まあ、これは私の問題です。方法はわかりません。

PHPここで_/etc_にしたいバージョンをコンパイルしました:

_/etc/php-5.2.8/_

この中に、_php.ini-recommended_ファイルがあり、これにいくつかの変更を加えて_php.ini_に名前を変更したため、PHPはそれを使用します。しかし、ブラウザを開いて、歴史と_http://localhost<CRM dir>/install.php_アドレスに行った、ウィザードはまだ私はPHPの正しいバージョンを使用していないと言います。

この投稿 に基づいてPHPのバージョンを変更するには、_test.php_スクリプトを実行した後に表示されます)?言い換えると、 phpinfo()は、PHP 5.3.2を実行していると言いますが、_/etc_にあるコンパイル済みの5.2.8バージョンに変更します。

26
nicorellius

サーバーによっては、PHPではなくApacheを確認する必要があります。

(RHEL/CentOSの場合)/etc/httpd/conf.d/php.iniをご覧ください

#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated web pages.
#
LoadModule php5_module modules/libphp5.so
#
# Causes the PHP interpreter to handle files with a .php extension.
#
AddHandler php5-script .php
AddType text/html .php

あなたのPHP=モジュールはmodules/libphp5.soであることがわかります。

AddHandler php5-script .phpは、拡張子.phpを持つすべてのファイルに対してPHPを実行するようにApacheに指示します。

RPMベースのOSを使用している場合は、おそらく現在のバージョンのPHPをアンインストールし(それが可能であれば)、探しているバージョンを再インストールする方が簡単です。

rpm -qa | grep php

PHPが現在インストールされているバージョンを示します。

8
grufftech

すでに他のバージョンのphpをインストールしている場合は、Apacheが使用するphp *モジュールを変更するだけで済みます。

たとえば、php5とphp7.0があります。 Apacheでphp7.0を使用したい場合は、彼のモジュールを有効にし、php5モジュールを無効にするだけです。

Sudo a2dismod php5
Sudo a2enmod php7.0
42
hubert