Unix 系統(tǒng)下的安裝

目錄

本節(jié)將指導(dǎo)如何在 Unix 系統(tǒng)下安裝和配置 PHP。在開始安裝之前,請務(wù)必研究自己使用的系統(tǒng)和 web 服務(wù)器的相關(guān)章節(jié)。

安裝前需要考慮的事項一節(jié)提到,在本節(jié)主要以 web 為中心介紹 PHP 的設(shè)置。不過本節(jié)也會覆蓋一些 PHP 命令行用法的設(shè)置方法。

在 Unix 平臺下安裝 PHP 有幾種方法:使用配置和編譯過程,或是使用各種預(yù)編譯的包。本文主要針對配置和編譯 PHP 的過程。很多 Unix 類系統(tǒng)都有包安裝系統(tǒng),可以用它來設(shè)置一個有著標(biāo)準(zhǔn)配置的 PHP。但是若需要與標(biāo)準(zhǔn)配置不同的功能(例如一個安全服務(wù)器,或者不同的數(shù)據(jù)庫驅(qū)動擴展模塊),可能需要編譯 PHP 和/或 web 服務(wù)器。如果不熟悉編譯軟件,可以考慮搜索一下是否有人已經(jīng)編譯了包含所需要功能的預(yù)編譯包。

編譯所需的知識和軟件:

  • 基礎(chǔ)的 Unix 技能(有能力操作“make”和一種 C 語言編譯器)
  • 一個 ANSI C 語言編譯器
  • 一個 web 服務(wù)器
  • 任何模塊特需的組件(例如 GDPDF 庫等)

直接從 Git 源文件或者自己修改過的包編譯時可能需要:

  • autoconf: 2.59+ (for PHP >= 7.0.0), 2.64+ (for PHP >= 7.2.0)
  • automake: 1.4+
  • libtool: 1.4.x+(除了 1.4.2)
  • re2c: 版本 0.13.4+
  • bison:
    • PHP 7.0 - 7.3: 2.4 或更高 (包含 Bison 3.x)
    • PHP 7.4: > 3.0

PHP 初始的配置和安裝過程被 configure 腳本中一系列命令行選項控制??梢酝ㄟ^ ./configure --help 命令了解 PHP 所有可用的編譯選項及簡短解釋。本手冊是分開對這些選項編寫文檔的??稍诟戒浿姓业?核心配置選項,而擴展模塊特定的配置選項分別在其函數(shù)參考頁面中描述。

配置好 PHP 后,便可以開始編譯模塊和/或可執(zhí)行文件。make 命令用來做這一工作。如果該命令執(zhí)行失敗而找不到原因,請參考 安裝問題 一節(jié)。

注意:

某些 Unix 系統(tǒng)(類似 OpenBSD 和 SELinux)出于安全考慮,可能不允許同時設(shè)置文件的寫和執(zhí)行的權(quán)限,又稱為 "PaX MPROTECT" 或 "W^X violation" 保護。但是 PCRE's JIT 又要求不能這么做,所以安裝時可以參考 關(guān)閉 PCRE's JIT 支持,或者在系統(tǒng)中將相關(guān)的二進制文件加入保護白名單。

注意: 目前還不支持 ARM 與 Android 工具鏈的交叉編譯。