Saya telah menginstal php 5.6 dan dan php 7.1 di Ubuntu 16.04 saya
Saya tahu dengan Apache sebagai server web saya, saya bisa melakukannya
a2enmod php5.6 #to enable php5
a2enmod php7.1 #to enable php7
Ketika saya menonaktifkan php7.1 di modul Apache dan mengaktifkan php 5.6, Apache mengenali perubahan tersebut dan menggunakan interpreter php 5.6 seperti yang diharapkan.
Tetapi ketika saya menjalankan server web php internal dari baris perintah:
php -S localhost:8888
php menangani permintaan menggunakan php 7. Jadi bagaimana cara beralih antara php 5.6 dan php 7.1 di baris perintah?
Jawaban:
Mode peralihan interaktif
sudo update-alternatives --config php
Pengalihan Manual
Dari PHP 5.6 => PHP 7.1
PHP 5.6 default diatur di sistem Anda dan Anda perlu beralih ke PHP 7.1.
Apache:
$ sudo a2dismod php5.6 $ sudo a2enmod php7.1 $ sudo service apache2 restart
Garis komando:
$ sudo update-alternatives --set php /usr/bin/php7.1
Dari PHP 7.1 => PHP 5.6
PHP 7.1 default diatur di sistem Anda dan Anda perlu beralih ke PHP 5.6.
Apache:
$ sudo a2dismod php7.1 $ sudo a2enmod php5.6 $ sudo service apache2 restart
Garis komando:
$ sudo update-alternatives --set php /usr/bin/php5.6
Sumber
sumber
php -v
dari 7,2 menjadi 7,1! Itu bagus dan sederhana.create_function
tidak lagi didukung mulai dari php 7.2 .)ketikkan ini di baris perintah Anda, seharusnya berfungsi untuk semua ubuntu antara 16.04, 18.04 dan 20.04.
dan inilah yang akan Anda dapatkan
There are 4 choices for the alternative php (providing /usr/bin/php). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/php7.2 72 auto mode 1 /usr/bin/php5.6 56 manual mode 2 /usr/bin/php7.0 70 manual mode 3 /usr/bin/php7.1 71 manual mode 4 /usr/bin/php7.2 72 manual mode Press <enter> to keep the current choice[*], or type selection number:
Pilih versi yang sesuai
sumber
Saya sebenarnya tidak akan merekomendasikan penggunaan
a2enmod
untuk php 5 atau 7. Saya akan menggunakanupdate-alternatives
. Anda dapat melakukansudo update-alternatives --config php
untuk menyetel versi luas sistem PHP yang ingin Anda gunakan. Ini membuat versi baris perintah dan apache Anda berfungsi sama. Anda dapat membaca lebih lanjut tentangupdate-alternatives
di halaman manual .sumber
Saya pikir Anda harus mencoba ini
Dari php5.6 hingga php7.1
sudo a2dismod php5.6 sudo a2enmod php7.1 sudo service apache2 restart sudo update-alternatives --set php /usr/bin/php7.1 sudo update-alternatives --set phar /usr/bin/phar7.1 sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.1
Dari php7.1 hingga php5.6
sudo a2dismod php7.1 sudo a2enmod php5.6 sudo service apache2 restart sudo update-alternatives --set php /usr/bin/php5.6 sudo update-alternatives --set phar /usr/bin/phar5.6 sudo update-alternatives --set phar.phar /usr/bin/phar.phar5.6
sumber
Untuk mencantumkan semua versi yang tersedia dan memilihnya:
Atau lakukan secara manual
sudo a2dismod php7.1 // disable sudo a2enmod php5.6 // enable
sumber
Anda dapat membuat skrip untuk beralih dari versi:
sudo nano switch_php
lalu ketik ini:#!/bin/sh #!/bin/bash echo "Switching to PHP$1..." case $1 in "7") sudo a2dismod php5.6 sudo a2enmod php7.0 sudo service apache2 restart sudo ln -sfn /usr/bin/php7.0 /etc/alternatives/php;; "5.6") sudo a2dismod php7.0 sudo a2enmod php5.6 sudo service apache2 restart sudo ln -sfn /usr/bin/php5.6 /etc/alternatives/php;; esac echo "Current version: $( php -v | head -n 1 | cut -c-7 )"
keluar dan simpan membuatnya dapat dieksekusi:
sudo chmod +x switch_php
Untuk mengeksekusi skrip ketikkan saja
./switch_php [VERSION_NUMBER]
parameternya adalah 7 atau 5.6Itu saja, Anda sekarang dapat dengan mudah beralih dari PHP7 ke PHP 5.6!
sumber
Misalnya
Saya ingin beralih
PHP Version
dari7.1
ke7.2
kita dapat menggunakan perintah di bawah inisudo a2dismod php7.1 && sudo update-alternatives --set php /usr/bin/php7.2 && sudo a2enmod php7.2 && sudo service apache2 restart
a2dismod
digunakan untuk menonaktifkan versi php saat ini dana2enmod
digunakan untuk mengaktifkan versi tersebutsumber
Mungkin Anda memiliki versi PHP lama seperti PHP 5.6 di sistem Anda dan Anda menginstal PHP 7.2 juga sehingga ada banyak PHP di komputer Anda. Ada beberapa aplikasi yang dikembangkan ketika PHP 5.6 yang lebih lama adalah versi terbaru, mereka masih aktif dan Anda mengerjakan aplikasi tersebut, Anda mungkin bekerja di Laravel secara bersamaan tetapi Laravel membutuhkan PHP 7+ untuk memulai. Mendapatkan fotonya?
Dalam hal ini, Anda dapat beralih di antara versi PHP yang sesuai dengan kebutuhan Anda.
Beralih Dari PHP 5.6 => PHP 7.2
Apache: -
sudo a2dismod php5.6 sudo a2enmod php7.2 sudo service apache2 restart
Garis komando:-
sudo update-alternatives --set php /usr/bin/php7.2 sudo update-alternatives --set phar /usr/bin/phar7.2 sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.2 sudo update-alternatives --set phpize /usr/bin/phpize7.2 sudo update-alternatives --set php-config /usr/bin/php-config7.2
Dan sebaliknya, Beralih Dari PHP 7.2 => PHP 5.6
Apache: -
sudo a2dismod php7.2 sudo a2enmod php5.6 sudo service apache2 restart
Garis komando:-
sudo update-alternatives --set php /usr/bin/php5.6 sudo update-alternatives --set phar /usr/bin/phar5.6 sudo update-alternatives --set phar.phar /usr/bin/phar.phar5.6 sudo update-alternatives --set phpize /usr/bin/phpize5.6 sudo update-alternatives --set php-config /usr/bin/php-config5.6
sumber
Ketik perintah yang diberikan di terminal Anda ..
Untuk menonaktifkan versi PHP yang dipilih ...
Untuk mengaktifkan versi PHP lainnya ....
Ini akan mengupgrade versi Php, sebaliknya jika Anda ingin downgrade versi, Anda dapat melihatnya dengan PHP_INFO ();
sumber
Beralih dari PHP 5.6 ke PHP 7.2 menggunakan:
sudo a2dismod php5.6 && sudo a2enmod php7.2 && sudo service apache2 restart
Beralih dari PHP 7.2 ke PHP 5.6 menggunakan:
sudo a2dismod php7.2 && sudo a2enmod php5.6 && sudo service apache2 restart
sumber
Anda dapat menggunakan Script Switch PHP open source ini, yang dirancang khusus untuk digunakan di Ubuntu 16.04 LTS.
https://github.com/rapidwebltd/php-switch-scripts
Ada
setup.sh
skrip yang menginstal semua dependensi yang diperlukan untuk PHP 5.6, 7.0, 7.1 & 7.2. Setelah ini selesai, Anda dapat menjalankan salah satu skrip sakelar berikut untuk mengubah versi modul PHP CLI dan Apache 2../switch-to-php-5.6.sh ./switch-to-php-7.0.sh ./switch-to-php-7.1.sh ./switch-to-php-7.2.sh
sumber
Dari PHP 5.6 => PHP 7.1
$ sudo a2dismod php5.6 $ sudo a2enmod php7.1
untuk versi linux lama
untuk versi yang lebih baru
sumber
silahkan ikuti langkah-langkahnya:
i.e : your current version is : current_version = 7.3 , and you want to change it to : new_version = 7.2 1) sudo a2dismod php(current_version) 2) sudo a2enmod php(new_version) 3) sudo update-alternatives --config php (here you need to select php version number) 4) restart apache through : sudo /etc/init.d/apache2 restart OR sudo service apache2 restart
sumber
Saya membuat skrip bash untuk beralih di antara versi PHP yang berbeda di Ubuntu.
Semoga bisa membantu seseorang.
Berikut skripnya: (simpan di /usr/local/bin/sphp.sh, jangan lupa tambahkan + x flag dengan perintah: sudo chmod + x /usr/local/bin/sphp.sh)
sumber
Anda dapat menggunakan skrip di bawah ini untuk beralih di antara versi PHP dengan mudah. Saya telah menyertakan konfigurasi phpize juga.
https://github.com/anilkumararumulla/switch-php-version
Unduh file skrip dan jalankan
sh switch.sh
sumber
Saat menginstal laravel di Ubuntu 18.04, pilih instalasi default PHP 7.3.0RC3, tetapi laravel dan symfony tidak akan diinstal dengan benar karena mengeluh tentang missin php-xml dan php-zip, meskipun sudah diinstal. Anda perlu beralih ke php 7.1, menggunakan petunjuk di atas atau,
sudo update-alternatives --set php /usr/bin/php7.1
sekarang, menjalankan blog baru laravel, akan berjalan dengan benar
sumber