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 le faire.
a2enmod php5.6 to enable php5
a2enmod php7.1 to enable php7
Lorsque je désactive php7.1 dans les modules Apache et que j'active php5.6, Apache reconnaît le changement et utilise l'interpréteur php5.6 comme prévu.
Mais quand je lance un serveur web php interne à partir de la ligne de commande: -
php -S localhost:8888
php gère les demandes en utilisant php7, comment puis-je basculer entre php6.6 et php7.1 dans la ligne de commande?
Sudo update-alternatives --config php
La valeur par défaut PHP 5.6 est définie 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
La valeur par défaut PHP 7.1 est définie 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 ceci 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:
Choisissez la version appropriée
Je pense que tu devrais essayer ça
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 répertorier toutes les versions disponibles et en choisir une:
Sudo update-alternatives --config php
Ou faire manuellement
Sudo a2dismod php7.1 // disable
Sudo a2enmod php5.6 // enable
En fait, je ne recommanderais pas d'utiliser a2enmod
pour PHP 5 ou 7. J'utiliserais update-alternatives
. Vous pouvez utiliser Sudo update-alternatives --config php
pour définir la version de PHP utilisée par le système. Cela rend votre ligne de commande et les versions d'Apache fonctionnent de la même manière. Vous pouvez en savoir plus sur update-alternatives
sur la page man .
Vous pouvez créer un script pour passer d'une version à l'autre: Sudo nano switch_php
Puis tapez ceci:
#!/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 )"
quitter et enregistrer le rendre exécutable: Sudo chmod +x switch_php
Pour exécuter le script, tapez simplement ./switch_php [VERSION_NUMBER]
où le paramètre est 7 ou 5.6
Voilà, vous pouvez maintenant passer facilement du formulaire PHP7 à PHP 5.6!
Tapez la commande donnée dans votre terminal.
Pour désactiver la version sélectionnée PHP ...
Pour activer d'autres versions PHP ....
Il va mettre à jour la version PHP, la même chose inverse si vous voulez une version inférieure, vous pouvez le voir avec PHP_INFO ();
Passez de PHP 5.6 à PHP 7.2 en utilisant:
Sudo a2dismod php5.6 && Sudo a2enmod php7.2 && Sudo service Apache2 restart
Basculez 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 Open Source PHP, spécialement conçus pour être utilisés dans Ubuntu 16.04 LTS.
https://github.com/rapidwebltd/php-switch-scripts
Il existe un script setup.sh
qui installe toutes les dépendances requises pour PHP 5.6, 7.0, 7.1 & 7.2. Une fois cette opération terminée, vous pouvez simplement exécuter l'un des scripts de commutateur suivants pour modifier la version de PHP CLI et du module 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
De 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 la version plus récente
$ systemctl restart Apache2
Vous pouvez utiliser les lignes de commande ci-dessous pour basculer entre deux versions PHP.
Par exemple.
Je souhaite passer de PHP Version
de 7.1
à 7.2
que nous pouvons utiliser la commande ci-dessous
Sudo a2dismod php7.1 && Sudo update-alternatives --set php /usr/bin/php7.2 && Sudo a2enmod php7.2 && Sudo service Apache2 restart
a2dismod
est utilisé pour désactiver la version actuelle de php et a2enmod
pour activer la version
Lors de l’installation de laravel sur Ubuntu 18.04, PHP 7.3.0RC3 install est sélectionné par défaut, mais laravel et symfony ne s’installeront pas correctement. Vous devez passer à php 7.1, en utilisant les instructions ci-dessus ou,
Sudo update-alternatives --set php /usr/bin/php7.1
maintenant, en cours d'exécution laravel nouveau blog, procédera correctement
Vous pouvez utiliser le script ci-dessous pour passer facilement d'une version à une autre PHP J'ai également inclus la configuration de phpize.
https://github.com/anilkumararumulla/switch-php-version
Téléchargez le fichier de script et lancez
sh switch.sh