Centos 7 如何從官方來源安裝php7.3?
我來自 debian 世界,我掙扎了一段時間,現在了解 Centos 並在 Centos 7 上安裝 php7.3。
像這樣的教程https://tecadmin.net/install-php7-on-centos7/告訴我安裝一些 remi 版本。什麼是“Remi 的 RPM 儲存庫”,為什麼 php7.3 不在官方包源中?
[root@centos7 ~]# uname -a Linux centos7 3.10.0-957.5.1.el7.x86_64 #1 SMP Fri Feb 1 14:54:57 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
RHEL/CentOS 打算將穩定版本的軟體包優先於新版本的軟體包。這種策略對 PHP 適得其反,因為儲存庫中的最新版本是 5.4,即 EOL。
為 PHP 安裝第 3 方儲存庫是常見的做法,但我會推薦Webtatic而不是 Remi。
雖然 RHEL 和 CentOS 上的 php 版本與上游 EOL 的版本相對應,但 redhat 團隊會不斷檢查它們是否存在錯誤和安全修復。例如,類似於 RHEL7/CentOS7 如何/為什麼使用核心版本 3.18。它是主要針對企業使用者的長期支持戰略的一部分。
隨著 SoftwareCollections (
scl
) 的出現,可以使用更新版本的 php。雖然 scl 是 CentOS 特別興趣小組 (SIG) 的一部分,因此比 remi 等第三方儲存庫更接近 CentOS 官方項目,但它確實需要安裝和啟用。要啟用 SCL 儲存庫,在 CentOS7 上,只需執行:
yum install centos-release-scl
那應該安裝儲存庫並啟用它們。
預設情況下,從 scl 安裝 php 版本也會引入另一個版本的 apache,即
httpd-httpd24
. 但是,將正常 apache 版本與 scl 提供的 php 一起使用是完全可以的。請參閱centos wiki 頁面上的這個 howto 以獲得簡要的設置指南。假設您已經安裝並執行了 httpd,請執行以下操作以安裝 php 版本 7.3,例如。
yum -y install rh-php73 rh-php73-php rh-php73-php-fpm
/etc/httpd/conf.d/fmp.conf
例如,在 中創建一個配置文件,其中包含以下條目:ProxyPassMatch ^/(.*.php)$ fcgi://127.0.0.1:9000/var/www/html Alias / /var/www/html/ DirectoryIndex index.php
然後,啟用並啟動 php-fpm 服務,您應該一切順利。
systemctl enable --now rh-php73-php-fpm.service