多 1 個站長,資訊.音樂人同學會 – 如何從 PHP 7.4 .33 升級到 PHP 8.3.8:為 WordPress 6.8.2 打造(高效能)網站呢 ?

隨著 PHP 8.3.8 的發布,WordPress 網站管理員迎來了提升性能與安全性的絕佳機會,本文將分享在 CentOS 7 上運行 WordPress 6.8.2 的網站,從 PHP 7.4 .33 升級到 PHP 8.3.8,涵蓋升級前準備、升級過程、升級後驗證及最佳化建議,確保網站穩定運行,並提供配置建議以提升 WordPress 效能。

為什麼升級到 PHP 8.3.8?

PHP 8.3.8 帶來了顯著的性能提升和安全性增強,特別適合 WordPress 6.8.2:

  • 性能提升:引入 JIT(即時編譯)技術,加速 PHP 腳本執行,特別適用於 WordPress 的外掛和主題。
  • 安全性增強:修補了 PHP 7.4 .33 的安全漏洞,支援更現代的加密算法。
  • 新功能:改進型別系統、錯誤處理和 WordPress 相容性。
  • 長期支援:PHP 7.4.33 已於 2022 年 11 月停止支援,升級到 PHP 8.3 .8 可確保未來相容性。

1. 備份網站與伺服器-建議可用 20200428-Focal-Amd64-2025-08-08 做整機備份較保險

2. 檢查當前 PHP 版本與環境

確認當前 PHP 版本和已安裝模組,確保升級前的環境狀態:

php -v
rpm -qa | grep php

  • 執行 php -v 確認當前版本為 PHP 7.4.33。
  • 使用 rpm -qa | grep php 列出已安裝的 PHP 套件。

3. 安裝必要工具與儲存庫

為升級 PHP 8.3.8,需安裝 EPEL 和 Remi 儲存庫:

sudo yum install -y epel-release
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install -y yum-utils

4. 啟用 Remi PHP 8.3.8 儲存庫

啟用 Remi 儲存庫的 PHP 8.3.8 分支,並檢查可用套件:

sudo yum-config-manager --enable remi-php83
sudo yum list available php --enablerepo=remi-php83
sudo yum info php --enablerepo=remi-php83

升級過程:執行 PHP 8.3 .8 安裝

完成準備後,執行以下步驟升級到 PHP 8.3。

1. 停止相關服務

停止 Apache 和 PHP-FPM 服務,避免升級過程中的衝突:

sudo systemctl stop httpd
sudo systemctl stop php-fpm

2. 移除 PHP 7.4

移除現有 PHP 7.4 套件:

sudo yum remove php* --enablerepo=remi-php74

3. 安裝 PHP 8.3.8

安裝 PHP 8.3.8 及其 WordPress 所需模組:

sudo yum install -y php php-fpm php-cli php-common php-mysqlnd php-mbstring php-gd php-curl php-zip php-bcmath php-intl php-xml php-soap php-opcache --enablerepo=remi-php83

升級後:驗證與最佳化

升級完成後,需驗證 PHP 8.3 .8 是否正常運作,並最佳化 WordPress 效能。

1. 驗證 PHP 版本

檢查 PHP 版本:

php -v
  • 預期輸出
  PHP 8.3.8 (cli) (built: Jun 11 2024 08:29:33) (NTS)

多次執行 php -v,確認升級成功。

2. 測試 PHP 配置

創建臨時 PHP 資訊頁面:

echo '<?php phpinfo(); ?>' | sudo tee /var/www/html/info.php
  • 訪問 https://www.techx.idv.tw/info.php,確認 PHP 8.3.8 配置。
  • 移除測試頁面以確保安全:
  sudo rm /var/www/html/info.php

3. 重啟服務

重啟 PHP-FPM 和 Apache,應用新配置:

sudo systemctl restart php-fpm
sudo systemctl restart httpd
  • 檢查服務狀態:
  sudo systemctl status php-fpm
  sudo systemctl status httpd

4. 最佳化 PHP 配置

編輯 /etc/php.ini 以最佳化 WordPress 6.8.2 效能:

sudo nano /etc/php.ini
  • 建議設置
  memory_limit = 256M
  upload_max_filesize = 100M
  post_max_size = 100M
  max_execution_time = 300
  max_input_vars = 3000

  date.timezone = Asia/Taipei

  opcache.enable=1
  opcache.memory_consumption=128
  opcache.max_accelerated_files=10000
  opcache.jit=tracing
  opcache.jit_buffer_size=50M
  • 說明
  • memory_limit:支援大型外掛。
  • upload_max_filesizepost_max_size:允許上傳大檔案。
  • opcache.jit:啟用 JIT 提升性能。
  • date.timezone:確保正確時間戳。

5. 驗證網站功能

  • 執行 ping www.techx.idv.tw,確認網站可存取。
  • 檢查 /var/www/html/wp-config.php 的資料庫設定:
    php define('DB_HOST', 'localhost'); define('DB_USER', 'your_username'); define('DB_PASSWORD', 'your_password'); define('DB_NAME', 'your_database');
  • 確保 MySQL/MariaDB 服務運行:
    bash sudo systemctl start mysqld

小編結論與分享價值

小編從 PHP 7.4 .33 升級到 PHP 8.3.8 確實為 WordPress 6.8.2 網站帶來了(顯著的)性能提升和安全性增強

  • 備份與準備:確保資料安全,檢查相容性。
  • 升級過程:順利移除 PHP 7.4.33,安裝 PHP 8.3.8。
  • 最佳化與驗證:配置 OPcache、修復資料庫問題,確保網站穩定。

  • 重開機及重啟服務:僅在必要時(如服務無法啟動)執行:
sudo systemctl restart php-fpm
sudo reboot



探索更多來自 多 1 個站長 的內容

訂閱即可透過電子郵件收到最新文章。

這裡是 [ 多 1 個站長,資訊.音樂人同學會 ],「您好,喜歡這篇文章嗎?有沒有問題或想法想要分享?留言讓小編知道!或者,您也可以像一位探險家一樣,穿過這個網站,發現更多有趣的文章和深入的內容,小編期待著與您一起展開這場冒險!」,如果小編的作品有幫助到您,歡迎支持讓網站永續經營,您的支持是小編能夠持續提供優質內容和服務的重要動力 ! ( 請透過站內商品 [ Logo 或安全連結 ] 購買站內 ( 推薦優良 ) 商品🙏!)

探索更多來自 多 1 個站長 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

Continue reading