Beralih dari PHP 7.2 ke 7.1 di Ubuntu 16.04, Apache

21

Saya perlu menurunkan versi PHP di salah satu VM saya dari 7.2 ke 7.1 di Ubuntu 16.0.4. Terakhir kali saya mencoba menghapus hanya PHP dan menggantinya dengan versi yang berbeda, saya memiliki semua jenis masalah dengan Apache dan MySQL. Apakah ada cara cepat untuk menurunkan versi PHP dari 7.2 ke 7.1 tanpa harus menginstal ulang sepenuhnya dan mengkonfigurasi Apache (versi terbaru pada tulisan ini) dan semua yang lain di server?

Saya harus menurunkan versi karena informasi buruk yang saya terima dari vendor perangkat lunak yang mengklaim aplikasi mereka berjalan pada PHP 7.2. Ternyata harus memiliki 7.1.

Saya mencoba mencari info tentang cara menurunkan versi dari 7.2 ke 7.1, tetapi hanya mendapatkan hasil 'peningkatan'.

Terima kasih untuk bantuannya.

Pasak
sumber
1
Bagaimana Anda memulai PHP 7.2?
Michael Hampton
Pembaruan: Saya dulu sudo add-apt-repository ppa:ondrej/phpmenginstal PHP
7.2.x

Jawaban:

35

Di bawah ini adalah deskripsi dari apa yang saya lakukan. Saya harap informasi ini dapat membantu orang lain:

Saya menginstal PHP 7.1 bersama PHP 7.2. Saya juga menginstal sebagian besar ekstensi yang diperlukan untuk PHP 7.1. Saya kemudian melakukannya a2dismod php7.2dan a2enmod php7.1agar saya bisa beralih ke PHP 7.1 sambil tetap 7,2 tetap diinstal di server. Sebagian besar situs saya berfungsi setelah beralih. Satu-satunya situs yang tampaknya tidak berfungsi adalah situs Joomla. Daftar lengkap perintah yang saya jalankan adalah di bawah ini:

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php7.1

sudo apt-get install php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-mysql php7.1-mbstring php7.1-mcrypt php7.1-zip php7.1-fpm

sudo a2dismod php7.2

sudo a2enmod php7.1

sudo service apache2 restart
Pasak
sumber
1
Saya juga dalam situasi yang sama tetapi bahkan setelah menonaktifkan modul 7.2, jika saya mengetik php -v, itu masih menunjukkan php7.2. Ada ide?
khichar.anil
1
Saya juga punya hal yang sama. Meskipun PHP 7.1 saat ini diaktifkan di server saya, mengetik php -vmenunjukkan PHP 7.2.2. Namun, jika saya memuat phpinfo()di browser saya, itu akan menunjukkan versi yang benar 7.1.13,. Sudahkah Anda mencoba meninjau file phpinfo()?
Pegues
Lihat komentar saya di bawah ini. Ini akan mengubah jalur php default.
khichar.anil
1
Artikel yang bermanfaat tecadmin.net/switch-between-multiple-php-version-on-ubuntu
CrandellWS
@CrandellWS terima kasih atas pembagiannya. Informasi yang pasti membantu.
Pegues
19

untuk tampilan versi php diaktifkan di terminal oleh php -v. kita perlu mengatur pembaruan versi cli dari php. gunakan perintah di bawah ini untuk memperbarui versi php cli

// change terminal (cli) version (7.2 to 7.1)
sudo update-alternatives --set php /usr/bin/php7.1
Chirag Goti
sumber
Ini berhasil!
mistery_girl
12

@ pasangan: Metode Anda yang disebutkan di atas bekerja dengan baik untuk apache untuk mengganti versi yang berbeda. Dengan menjalankan perintah berikut akan mengubah php dari terminal juga. Sebenarnya Anda hanya perlu mengubah symlink ke versi PHP yang diinginkan.

sudo rm /usr/bin/php

sudo ln -s /usr/bin/php7.1 /usr/bin/php
khichar.anil
sumber
1

Inilah yang saya lakukan:

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php7.1

sudo apt-get install php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-mysql php7.1-mbstring php7.1-mcrypt php7.1-zip php7.1-fpm

sudo rm /usr/bin/php

sudo ln -s /usr/bin/php7.1 /usr/bin/php

Dan untuk mengonfirmasi bahwa Anda memiliki php 7.1 ketikkan perintah berikut

php --ini |grep Loaded

harus mengembalikan respons berikut

Loaded Configuration File:         /etc/php/7.1/cli/php.ini

jika Anda menggunakan laravel karena suatu alasan maka modifikasi fpm.service Anda untuk menunjuk ke versi 7.1 dan kemudian restart juga

sudo systemctl restart php7.1-fpm.service

sudo service nginx restart
Miguel Trevino
sumber