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




apache command-line-interface (11)

मैं वास्तव में php 5 या 7 के लिए a2enmod का उपयोग करने की अनुशंसा नहीं a2enmod । मैं update-alternatives उपयोग करूंगा। आप sudo update-alternatives --config php कर सकते हैं sudo update-alternatives --config php को सेट करने के लिए कि आप किस सिस्टम का पीएचपी वर्जन इस्तेमाल करना चाहते हैं। इससे आपकी कमांड लाइन और अपाचे संस्करण समान कार्य करते हैं। आप मैन पेज पर update-alternatives बारे में अधिक पढ़ सकते हैं।

मैंने अपने 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 के बीच कैसे स्विच कर सकता हूं?


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

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 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 में बदल सकते हैं!


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

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 संस्करण के बीच स्विच करने के लिए कमांड लाइनों के नीचे का उपयोग कर सकते हैं।

उदाहरण के लिए

मैं 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

और यह आपको मिलेगा

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:

उपयुक्त संस्करण चुनें


PHP 5.6 => PHP 7.1 से

$ sudo a2dismod php5.6
$ sudo a2enmod php7.1

पुराने लिनक्स संस्करणों के लिए

 $ sudo service apache2 restart

अधिक हाल के संस्करण के लिए

$ systemctl restart apache2

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

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

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

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

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


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

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

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


आप PHP स्क्रिप्ट के बीच स्विच करने के लिए नीचे दी गई स्क्रिप्ट का उपयोग कर सकते हैं आसानी से मैंने phpize कॉन्फ़िगरेशन को भी शामिल किया है।

https://github.com/anilkumararumulla/switch-php-version

स्क्रिप्ट फ़ाइल डाउनलोड करें और चलाएं

sh switch.sh






php-7.1