Nginx

使用 Nginx 和 php-fpm 在 CentOS 7 上簡單地從 php 5.6.x 升級到 7.x

  • February 12, 2019

我正在嘗試將 Digital Ocean 伺服器上的 PHP 版本從 5.6.19 升級到最新的 PHP 7.2。網上找到的很多說明都指向“php72”,這讓我懷疑5.6.19是否會無縫替換為yum update php. 我對此表示懷疑。

這意味著我可能必須先安裝 5.6.19,在這種情況下,我冒著完全刪除舊設置的風險。萬一新設置不順利,這很可怕,沒有太多可回頭的。

我發現這些地方有重要的設置:

  1. /etc/php-fpm.d/www.conf
  2. /etc/php.ini
  3. /etc/php-fpm.conf
  4. /etc/nginx/common.conf
  5. /etc/nginx/fastcgi.conf

當然,Nginx.conf(主要的 Ngnix 配置文件)也相應地呼叫了 PHP-FPM。它們包括上面的 #4 文件 common.conf,而後者又包括 fastcgi.conf。

外部網站上的說明,例如這個 – https://www.cyberciti.biz/faq/how-to-install-php-7-2-on-centos-7-rhel-7/ –do not take考慮到 Nginx 和 PHP-FPM 的細節,尤其是已經存在的舊 PHP 5.6.19。

無論如何,所有這些說明都談到“php72”,恐怕會改變所有路徑,我必須更新所有路徑到新的php連結。

您能否建議如何最好地做到這一點,以便我將舊的 PHP 無縫升級到最新版本,並使用上述所有常用路徑?否則我們需要:

  1. 刪除 5.6.19
  2. 安裝 7.2 和所有附加模組(將在路徑中引入“php72”)
  3. 確保所有路徑到處都是新的..

有什麼方法可以以作業系統預設的方式使這更簡單,而不需要像“Remi”等額外的儲存庫?

Remi Collet 在評論中回答了,所以沒有答案可以接受。我在這裡添加它是為了讓需要相同幫助的人更容易看到:

後代的步驟,在此處保存在 Stack Exchange 上:

  1. php56w-mcrypt在更新前使用 YUM刪除模組(這些天它不是一個常用的模組)
  2. 然後執行Remi 網站上的嚮導中列出的步驟
  3. 執行yum update --noplugins(dash dash noplugins 選項是安全的)
  4. 檢查是否有任何 nginx conf 文件具有以 . 開頭的舊式註釋#。如果是這樣,請將它們替換為必須以開頭的新嚴格註釋;
  5. 重啟 nginx(我不得不手動殺死所有正在執行的 nginx 程序)

希望這可以幫助某人。討論在Remi 的論壇上

謝謝你。

引用自:https://serverfault.com/questions/952713