कमांडलाइन ubuntu 16.04 पर php संस्करणों को स्विच करें




apache command-line-interface (9)

मैंने अपने Ubuntu 16.04 पर php 5.6 और php 7.1 स्थापित किया है

मैं अपाचे के साथ अपने वेब सर्वर के रूप में जानता हूं, मैं कर सकता हूं

a2enmod php5.6 #to enable php5
a2enmod php7.1 #to enable php7

जब मैं अपाचे मॉड्यूल में php7.1 को अक्षम करता हूं और php 5.6 को सक्षम करता है, तो Apache परिवर्तन को पहचानता है और अपेक्षित रूप से php 5.6 दुभाषिया का उपयोग करता है।

लेकिन जब मैं कमांडलाइन से आंतरिक php वेब सर्वर चलाता हूं:

php -S localhost:8888

php 7, php 7 का उपयोग करके अनुरोधों को संभालता है, मैं कमांड लाइन में php 6.6 और php 7.1 के बीच कैसे स्विच कर सकता हूं?


आप दो PHP संस्करण के बीच स्विच करने के लिए कमांड लाइनों के नीचे का उपयोग कर सकते हैं।

उदाहरण के लिए

मैं PHP Version को 7.1 से 7.2 पर स्विच करना चाहता हूं हम कमांड के नीचे उपयोग कर सकते हैं

sudo a2dismod php7.1 &&  sudo update-alternatives --set php /usr/bin/php7.2 && sudo a2enmod php7.2 && sudo service apache2 restart

a2dismod का उपयोग वर्तमान php संस्करण को निष्क्रिय करने के लिए किया जाता है और a2enmod का उपयोग संस्करण को सक्षम करने के लिए किया जाता है


इंटरएक्टिव स्विचिंग मोड

sudo update-alternatives --config php

मैनुअल स्विचिंग

PHP 5.6 => PHP 7.1 से

डिफ़ॉल्ट PHP 5.6 आपके सिस्टम पर सेट है और आपको PHP 7.1 पर स्विच करना होगा।

अमरीका की एक मूल जनजाति:

$ sudo a2dismod php5.6
$ sudo a2enmod php7.1
$ sudo service apache2 restart

कमांड लाइन:

$ sudo update-alternatives --set php /usr/bin/php7.1

PHP 7.1 => PHP 5.6 से

डिफ़ॉल्ट PHP 7.1 आपके सिस्टम पर सेट है और आपको PHP 5.6 पर स्विच करना होगा।

अमरीका की एक मूल जनजाति:

$ sudo a2dismod php7.1
$ sudo a2enmod php5.6
$ sudo service apache2 restart

कमांड लाइन:

$ sudo update-alternatives --set php /usr/bin/php5.6

Source


PHP 5.6 से PHP 7.2 का उपयोग कर स्विच करें:

sudo a2dismod php5.6 && sudo a2enmod php7.2 && sudo service apache2 restart

PHP 7.2 से PHP 5.6 का उपयोग कर स्विच करें:

sudo a2dismod php7.2 && sudo a2enmod php5.6 && sudo service apache2 restart

अपने टर्मिनल में दी गई कमांड टाइप करें।

चयनित PHP संस्करण को अक्षम करने के लिए ...

    • sudo a2dismod php5
    • sudo service apache2 पुनरारंभ
  1. अन्य PHP संस्करण सक्षम करने के लिए ...।

    • सूद a2enmod php5.6
    • sudo service apache2 पुनरारंभ

यह Php वर्जन को अपग्रेड करेगा, यदि आप डाउनग्रेड वर्जन चाहते हैं तो वही चीज रिवर्स होगी, आप इसे PHP_INFO () द्वारा देख सकते हैं;


आप इन ओपन सोर्स PHP स्विच लिपियों का उपयोग कर सकते हैं, जिन्हें विशेष रूप से Ubuntu 16.04 LTS में उपयोग के लिए डिज़ाइन किया गया था।

https://github.com/rapidwebltd/php-switch-scripts

एक setup.sh स्क्रिप्ट है जो PHP 5.6, 7.0, 7.1 और 7.2 के लिए सभी आवश्यक निर्भरता स्थापित करता है। एक बार जब यह पूरा हो जाता है, तो आप बस PHP सीएलआई और अपाचे 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

आप संस्करणों से स्विच करने के लिए एक स्क्रिप्ट बना सकते हैं: sudo nano switch_php फिर इसे टाइप करें:

#!/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 )"

बाहर निकलें और इसे बचाने के लिए निष्पादन योग्य बनाएं: sudo chmod +x switch_php

स्क्रिप्ट निष्पादित करने के लिए बस टाइप करें ./switch_php [VERSION_NUMBER] जहां पैरामीटर 7 या 5.6 है

यही कारण है कि अब आप आसानी से फॉर्म PHP7 को PHP 5.6 में बदल सकते हैं!


उबंटू 18.04 पर लार्वा स्थापित करते समय, डिफ़ॉल्ट PHP 7.3.0RC3 चयनित चुनें, लेकिन लार्वा और सिम्फनी मिस् थ php-xml और php-zip के बारे में शिकायत करने के बावजूद ठीक से स्थापित नहीं होंगे, भले ही वे स्थापित हों। उपरोक्त निर्देशों का उपयोग करते हुए, आपको php 7.1 पर स्विच करना होगा, या

 sudo update-alternatives --set php /usr/bin/php7.1

अब, लार्वा नए ब्लॉग को चलाने, सही ढंग से आगे बढ़ेगा


मुझे लगता है कि आपको यह कोशिश करनी चाहिए

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

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

सभी उपलब्ध संस्करणों को सूचीबद्ध करने और उनमें से चुनने के लिए:

sudo update-alternatives --config php

या मैन्युअल रूप से करते हैं

sudo a2dismod php7.1 // disable
sudo a2enmod php5.6  // enable






php-7.1