轉載自:https://www.sunxiaoning.com/linux/109.html
安裝php5.6
新增源:
sudo add-apt-repository ppa:ondrej/php
安裝php5.6:
sudo apt-get update
sudo apt-get install php5.6
sudo apt-get install libapache2-mod-php5.6
sudo apt-get install php5.6-mysql php5.6-mbstring php5.6-mcrypt php5.6-xml
版本切換
從PHP 5.6 切換到 PHP 7.0:
sudo a2dismod php5.6
sudo a2enmod php7.0
sudo service apache2 restart
update-alternatives --set php /usr/bin/php7.0
從PHP7.0切換到5.6:
sudo a2dismod php7.0
sudo a2enmod php5.6
sudo service apache2 restart
sudo update-alternatives --set php /usr/bin/php5.6
學習自這兩個部落格:
Ubuntu 16.04中設定nginx + php + mysql
在 Ubuntu 16.04上安裝 Nginx, MySQL, PHP (LEMP)。
我主要想記錄:nginx已經和一個php-fpm繫結之後,如何更換和其他php版本的繫結,也是做個記錄,為以後給個方便。
前面的設定nginx就不弄了。可以看看第一個
這裡,任何php版本都可以,
sudo apt-add-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.1 php7.1-fpm
php -v
sudo service php7.1-fpm start #啟動
sudo service php7.1-fpm restart #重新啟動
sudo service php7.1-fpm status #執行狀態
sudo service php7.1-fpm stop #停止
然後進入
/etc/nginx/sites-available/default
檔案,然後修改nginx的設定資訊,
這個是我自己的最終的資訊,是結合上面兩篇部落格綜合而來的,#fastcgi_pass 127.0.0.1:9000
。是當初復現php-fpm攻擊用的,不用非到127.0.0.1:9000上,
正常就是idao那個sock檔案上就好。然後後面的就複製貼上就好,也是看上面的部落格的
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
#fastcgi_pass 0.0.0.0:9000;
#nginx fastcgi程序監聽的IP地址和埠
#fastcgi_pass 127.0.0.1:9000; #
#fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
然後重新啟動nginx和PHP服務就好了
sudo service nginx restart
sudo service php7.1-fpm restart
注意:
有時候nginx重新啟動的時候會報錯。
不用慌,這個意思就是我們的那個/etc/nginx/sites-available/default
,這個檔案設定的有問題,修改就是了。修好了就好了。=
然後去phpinfo頁面重新整理一下,就好了
我是從7.4設定到7.3的,成功了。就是在安裝PHP的時候,把7.1全部換成7.3就ok了。