Basculer les versions php sur la ligne de commande ubuntu 16.04
j'ai installé php 5.6 et et php7.1 sur mon ubuntu 16.04
<!-Je sais qu'avec apache comme serveur web, Je peux fairea2enmod php5.6 to enable php5
a2enmod php7.1 to enable php7
quand je désactive php7.1 dans les modules apache et activer php5.6, apache reconnaît le changement et utilise php5.6 interprète comme prévu.
mais quand j'exécute le serveur web php interne à partir de la ligne de commande :-
php -S localhost:8888
php gère les requêtes en utilisant php7, Comment puis-je basculer entre php6.6 et php7.1 sur la ligne de commande ?
10 réponses
From PHP 5.6 = > PHP 7.1
par défaut PHP 5.6 est défini sur votre système et vous devez passer à PHP 7.1.
Apache:
$ sudo a2dismod php5.6
$ sudo a2enmod php7.1
$ sudo service apache2 restart
Ligne De Commande:
$ sudo update-alternatives --set php /usr/bin/php7.1
From PHP 7.1 = > PHP 5.6
par défaut PHP 7.1 est défini sur votre système et vous devez passer à PHP 5.6.
Apache:
$ sudo a2dismod php7.1
$ sudo a2enmod php5.6
$ sudo service apache2 restart
Ligne De Commande:
$ sudo update-alternatives --set php /usr/bin/php5.6
tapez dans votre shell
$ sudo update-alternatives --config php
et c'est ce que vous obtiendrez
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:
choisir la version appropriée
je pense que vous devriez essayer ce
de php5.6 à 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
de php7.1 à 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
Pour la liste de toutes les versions disponibles et choisir parmi eux :
sudo update-alternatives --config php
ou faire manuellement
sudo a2dismod php7.1 // disable
sudo a2enmod php5.6 // enable
en fait, je ne recommande pas d'utiliser a2enmod
pour php 5 ou 7. Je voudrais utiliser update-alternatives
. Vous pouvez le faire sudo update-alternatives --config php
pour définir quelle version de PHP vous voulez utiliser. Cela permet à votre ligne de commande et aux versions apache de fonctionner de la même manière. Vous pouvez en lire plus à propos de update-alternatives
sur le page de manuel de.
tapez la commande donnée dans votre terminal..
pour désactiver la version PHP sélectionnée...
- sudo a2dismod php5
- sudo service apache2 restart
pour activer une autre version PHP....
- sudo a2enmod php5.6
- sudo service apache2 restart
il sera mise à niveau de version de Php, même chose à l'inverse si vous voulez la version downgrade, vous pouvez le voir par PHP_INFO();
passer de PHP 5.6 à PHP 7.2 en utilisant:
sudo a2dismod php5.6 && sudo a2enmod php7.2 && sudo service apache2 restart
passer de PHP 7.2 à PHP 5.6 en utilisant:
sudo a2dismod php7.2 && sudo a2enmod php5.6 && sudo service apache2 restart
vous pouvez utiliser ces Scripts de commutateur PHP open source, qui ont été conçus spécifiquement pour une utilisation dans Ubuntu 16.04 LTS.
https://github.com/rapidwebltd/php-switch-scripts
setup.sh script qui installe toutes les dépendances requises pour PHP 5.6, 7.0, 7.1 & 7.2. Une fois ceci terminé, vous pouvez simplement exécuter l'un des scripts de commutation suivants pour changer la version PHP CLI et Apache 2 module../switch-to-php-5.6.sh
./switch-to-php-7.0.sh
./switch-to-php-7.1.sh
./switch-to-php-7.2.sh
vous pouvez créer un script pour passer des versions:sudo nano switch_php
puis tapez ceci:
#!/bin/sh
#!/bin/bash
echo "Switching to PHP..."
case 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 )"
sauvegarder et quitter
le rendre exécutable: sudo chmod +x switch_php
pour exécuter le script tapez juste ./switch_php [VERSION_NUMBER]
où le paramètre est 7 ou 5.6
c'est ce Que vous pouvez maintenant facilement changer de forme PHP7 de PHP 5.6!
From PHP 5.6 = > PHP 7.1
$ sudo a2dismod php5.6
$ sudo a2enmod php7.1
pour les anciennes versions de linux
$ sudo service apache2 restart
pour une version plus récente
$ systemctl restart apache2