在 OpenBSD 系統(tǒng)下的安裝

本章節(jié)的內(nèi)容和提示僅限于將 PHP 安裝到 ? OpenBSD 5.8 系統(tǒng)上。

使用二進(jìn)制包安裝

使用二進(jìn)制包安裝 PHP 到 OpenBSD 系統(tǒng)上是被推薦的同時也是最簡單的方法。PHP 核心包已經(jīng)從其他模塊中分離出來了并且每個模塊可以被獨立的安裝/卸載而不影響其他模塊。所有這些安裝 PHP 需要的文件可以在 OpenBSD 光盤或者在 FTP 站點上找到。

需要安裝的 PHP 核心包的文件是 php,它包含了基本的引擎(包括 gettext 和 iconv)。其次,可能還需要安裝一些模塊包,如:php-mysqlphp-imap。需要使用命令 phpxs 去激活它,并且再通過修改 php.ini 文件來屏蔽他們。

示例 #1 在 OpenBSD 系統(tǒng)下的軟件包的安裝示例

# pkg_add php
# pkg_add php-fpm
# pkg_add php-mysql
  (安裝 PEAR 庫)
# pkg_add pear

Follow the instructions shown with each package!

  (移除包)
# pkg_delete php
# pkg_delete php-fpm
# pkg_delete php-mysql
# pkg_delete pear

閱讀用戶手冊中的 ? packages(7) 部分,可以得到更多 OpenBSD 系統(tǒng)下有關(guān)二進(jìn)制軟件包的信息。

使用軟件包

同樣可以使用? 軟件包目錄(ports tree)來編譯 PHP 的源代碼。然而,這樣的安裝方式僅僅是建議對 OpenBSD 非常熟悉的高級用戶去做。PHP4 的軟件包被分別分為了兩個子目錄:core 和 extensions。其中 extensions 目錄產(chǎn)生了所有 PHP 所支持的子模塊。如果不希望創(chuàng)建并且使用這些模塊中的某些模塊,請使用 FLAVOR no_* 參數(shù)。例如,如果希望跳過編譯 imap 模塊,設(shè)置 FLAVOR 為 no_imap即可。

常見問題

  • Apache 和 Nginx 不再是 OpenBSD 上的默認(rèn)服務(wù)器,但他們都可以在 ports 和包中找到。 新的默認(rèn)服務(wù)器也被稱為 “httpd”。
  • 默認(rèn)安裝的 httpd 運行于 ? chroot(2) jail 內(nèi),將限制 PHP 腳本只能訪問 /var/www下面的文件。需要建立 /var/www/tmp 目錄來存放 PHP session 文件,或使用其它的 session 后端。此外,數(shù)據(jù)庫套接字需要被放入 jail 或者偵聽 localhost接口。如果使用網(wǎng)絡(luò)函數(shù),某些 /etc 下面的文件例如 /etc/resolv.conf/etc/services 需要被移動到 /var/www/etc 中去。OpenBSD PEAR 包會自動安裝到正確的 chroot 目錄中。
  • 對應(yīng)于 ? gd 擴(kuò)展的 OpenBSD 5.7+ 包需要預(yù)先安裝 XFree86。通過添加 xbase.tgz 文件集到 post-installation (參閱 OpenBSD FAQ#4) 中。