PHPバージョンを7から5.6に戻そうとしていますが、PHP 7を削除してからPHP 5.6をインストールしましたが、まだバージョン7を実行しているようです。
Apache、phpMyAdmin、coが適切に設定されているPHPバージョンを移動する簡単な方法はありますか?
PHPの現在のバージョンをその場で、さらにはサイトごとに変更する簡単な方法は素晴らしいでしょう。
更新
今日、php7.0
Apacheモジュールを無効にしているにもかかわらず、PHP 7の実行に問題がありました:phpinfo
はfastCGIを使用してphp 7を表示していました.
...したがって、以下の指示に従ってこの状況に直面した場合、proxy_fcgi
Apacheモジュールを無効にする必要があります。
Sudo a2dismod proxy_fcgi proxy; Sudo service Apache2 restart
1。再インストールPHP 5.6
私のために働いたのはこのガイドでした: http://www.lornajane.net/posts/2016/php-7-0-and-5-6-on-ubunt
実際にphp7.0
を削除する必要はありません。php5.6を一緒にインストールできます(php7.0を必要とするphpmyadmin
パッケージに依存関係の問題があるため)
libapache2-mod-php
がApacheでPHPを有効にする適切な方法であると仮定すると、次のように進めることができます。
Sudo add-apt-repository ppa:ondrej/php
Sudo apt-get update
Sudo apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-mbstring php7.0-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0
2。 Switch PHP version:
Php5.6からphp7.0:
Apache:
Sudo a2dismod php5.6 ; Sudo a2enmod php7.0 ; Sudo service Apache2 restart
CLI:
Sudo update-alternatives --set php /usr/bin/php7.0
Php7.0からphp5.6へ:
Apache:
Sudo a2dismod php7.0 ; Sudo a2enmod php5.6 ; Sudo service Apache2 restart
CLI:
Sudo update-alternatives --set php /usr/bin/php5.6
Ubuntu 16.04にはphp 7.0
が付属しており、一部のphp
アプリケーションはphp 7.0
で失敗する場合があります。そのため、場合によっては、php 7.0
とphp 5.x
。これにより、いつでも必要に応じて使用するバージョンを選択できます。
あなたはそうすることができます:
xavi@computer# Sudo su
root@computer# add-apt-repository ppa:ondrej/php
root@computer# apt-get update
root@computer# apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0 php5.6-curl php5.6-Gd php5.6-mcrypt php5.6-xml php5.6-xmlrpc
私の場合、両方のphp5.6 & php7.0
のインストールは問題ありませんでした。問題などの不満はありません。
php 5.6
からphp 7.0
に切り替えるには、2つのことを行う必要があります。
# For php in web apps
Sudo a2dismod php5.6 && Sudo a2enmod php7.0 && Sudo service Apache2 restart
# For php-cli in the command line
Sudo ln -sfn /usr/bin/php7.0 /etc/alternatives/php
またはphp7.0からphp5.6:
# For php in web apps
Sudo a2dismod php7.0 && Sudo a2enmod php5.6 && Sudo service Apache2 restart
# For php-cli in the command line
Sudo ln -sfn /usr/bin/php5.6 /etc/alternatives/php
Php -vを実行して、使用しているものをすばやく確認することもできます。
あなたの質問には重要な詳細が欠けているので、私はより広く答えます。
パッケージを使用していると仮定すると、いくつかの重要な詳細があります。
Apache2は、Apache2
パッケージを使用するlibapache2-mod-php7.0
SAPIまたはphp7.0-fpm
でmod_proxy_fcgi
を使用するFPM SAPIを使用するように構成できます。
Ubuntu 16.04のリポジトリにはPHP 7.0のみがあります。ppa:ondrej/php
を使用して、PHP 5.6のサポートを追加できます。同様の命名方式(_libapache2-mod-php5.6
またはphp5.6-fpm
)。
Apache2 SAPI(libapache2-mod-php*
)を使用している場合、libapache2-mod-php5.6
をインストールしてa2dismod php7.0
を実行し、PHPを有効にしてPHP 7.0を無効にする必要があります。 5.6 a2enmod php5.6
を実行して。
FPM SAPI(php*-fpm
)を使用している場合、FPM UNIXソケットを/run/php/php7.0-fpm.sock
から/run/php/php5.6-fpm.sock
に変更する必要があります。
PHP(MySQLなど)にバンドルされているモジュールの命名規則はphpX.Y-<ext>
(fe php7.0-mysql
およびphp5.6-mysql
)ですが、外部PECLモジュール(fe APCu 、mongodb、...)ただphp-<ext>
(fe php-apcu
、php-mongodb
)です。インターネットで質問する前に、システムでapt-cache search php <ext>
を実行して正しいパッケージ名を検索することをお勧めします。
Phpパッケージを削除してphp5.6をインストールする必要があると思います。次の手順を実行できます。
Sudo apt-get purge php7.*
Sudo add-apt-repository ppa:ondrej/php
Sudo apt-get update
Sudo apt-get install php5.6
その後、PHPのバージョンを確認して確認できます。以下のように行われます。
php -v