在生產伺服器上的新鮮和安全 PHP 套件之間進行妥協?

在生產伺服器上的新鮮和安全 PHP 套件之間進行妥協?

我有一些運行 Centos 的生產伺服器。我的應用程式需要相當新版本的 PHP(> 5.2,IIRC)。 Centos 使用者目前可用的選項有:

  1. 官方的、主流的centos5/redhat套件。
    • 優點:最穩定、最安全、易於安裝-redhat 定期發布安全性更新和建議。
    • 缺點:軟體包很舊(5.1.6?)
  2. 第三方儲存庫(例如雷米·科萊的回購)
    • 優點:最先進、易於安裝
    • 缺點:不可靠——我們曾經使用 utterramblings 儲存庫……但這傢伙已經完全失踪一年多了。我不想再陷入這樣的困境。
    • 缺點:不那麼安全或穩定
  3. 使用 CentOS 測試儲存庫
    • 優點:最新版本,易於安裝
    • 缺點:不穩定。他們稱之為「測試」並非無緣無故。不適合生產伺服器
  4. 從原始碼建置 (php.net)
    • 優點:前沿
    • 缺點:勞力密集、不安全、不穩定

其他選項:

  1. 紅帽提供了紅帽應用程式堆疊其中包括最近的版本,但不存在 Centos 等效版本。
    • 這些軟體包的 CentOS 版本不存在有什麼原因嗎?來源一定是可用的,對嗎?
    • 來源必須可用,對嗎?自己建立 centos 軟體包有多難?
  2. 其他 Linux 發行版
    1. Debian 的穩定性與 Redhat 相當,但提供舊軟體包
    2. Ubuntu 提供了更新但穩定性/安全性較差的軟體包
    3. 其他的?

所以,最後,我的問題是:是否有穩定、安全、定期更新的 PHP 軟體包或原始碼的良好來源(適用於任何 Linux 發行版)?您從哪裡獲取原始程式碼/二進位檔案?

答案1

只是為了強調 Debian 方面:

之前的 Debian 版本 - Etch(2007 年 4 月 8 日) - 附 PHP 5.2.0。

目前的 Debian 版本 - Lenny(2009 年 2 月 14 日) - 附帶 PHP 5.2.6。

如果在發布週期內對軟體包進行任何重大更新,這些版本通常可以在向後移植.org如果他們有明顯的用戶群。可以找到 Lenny 可用的向後移植軟體包的完整列表這裡。到目前為止,這個清單相對較短,因為最後一個版本只有幾個月的時間。

查看特定版本PHP以及 Debian 中您可以使用的其他軟體包軟體包.debian.org

答案2

我建造自己的 RPM,因為我不相信第三方維護者會留在地球表面。

這有點痛苦(雖然我只建造了幾個包),但我知道完成後我會得到什麼。我使用來自上游(RHEL / CentOS)的規範文件,但我會在必要時修改它們以滿足我的需要,並替換我正在尋找的任何版本的源代碼(必要時修改上游的補丁)。

這也有助於我不在生產系統上安裝編譯器的工作流程,因為我可以將自訂的二進位檔案傳送給它們。當我「卡住」運行舊作業系統時(沒有升級預算等),我這樣做還可以為舊作業系統提供新軟體包的向後移植。

如果您能夠掌握 SRPMS,那麼建立軟體包並不難。 (主要是為給定的套件構建構建環境,這可能會很痛苦。)從無到有構建RPM(即自己編寫規範)是一個很好的練習,儘管您應該首先閱讀一些“專業”完成的規範文件以獲得感受它。

答案3

我無法真正回答你的問題,但我習慣做的是使用官方發布的源代碼,然後在開發環境中編譯它。

然後我只是使用 dpkg 工具(我使用的是 debian)從中創建一個包,但是應該有類似的方法可以使用像作業系統這樣的 RedHat 來創建一個包。

然後,您只需將其傳播到您的伺服器上即可。

答案4

其他值得考慮的選擇

相關內容