OneinStack 安裝 PHP 擴充套件

2020-07-16 10:06:04
由於 PHP 開啟 fileinfo(php 引數 –enable-fileinfo)需要大量系統資源才能編譯通過,考慮到小記憶體機器,因此預設 OneinStack fileinfo 不支援,需額外再安裝,如果你沒安裝則會提示:

PHP function mime_content_type() is missing, try enabling fileinfo module.

這樣的問題應該是需要安裝 [Fileinfo PHP] 擴充套件才可以繼續安裝。如果我們當前伺服器環境是使用的 OneInStack 一鍵 WEB 設定的,那就相對比較簡單,直接內建有擴充套件可以快速安裝。

第一、快速安裝擴充套件

切換到 oneinstack 安裝的根目錄下執行 ./addons.sh 指令碼, 根據提示可以直接安裝成功

第二、手工編譯安裝

並不是所有的 PHP 擴充套件都可以通過 ./addons.sh 指令碼安裝成功, 如果需要安裝指令碼中沒有提供的 PHP 擴充套件, 就可以使用原始碼編譯安裝, 下面我們已 yaf 擴充套件為例講解:

# 新建一個資料夾存放下載好的 PHP 擴充套件壓縮包
mkdir php-extension
# 進入剛才的目錄中, 下載 PHP 擴充套件原始碼包, 基本上都可以在 PECL 找到需要的 PHP 擴充套件
wget https://pecl.php.net/get/yaf-3.0.7.tgz
# 解壓檔案
tar zxvf yaf-3.0.7.tgz
# 檢視解壓的檔案目錄
ll
package.xml  yaf-3.0.7  yaf-3.0.7.tgz
# 切換到解壓好的目錄下
cd yaf-3.0.7
# 進項原始碼編譯
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
# 編譯完成後切換到編譯好的擴充套件存放的目錄之下
cd /usr/local/php/lib/php/extensions
# 檢視有沒有 no-debug-non-zts-20160303 類似資料夾
ls
# 進入 o-debug-non-zts-20160303 資料夾下
cd no-debug-non-zts-20160303
# 檢視有沒有 yaf.so 擴充套件, 如果有, 證明編譯成功
ls
# 向 php.ini 組態檔載入 yaf.so 擴充套件
echo 'extension=yaf.so' > /usr/local/php/etc/php.d/ext-yaf.ini
# 重新啟動 PHP
service php-fpm restart

這樣就安裝好了 PHP 擴充套件.

以上就是OneinStack 安裝 PHP 擴充套件的詳細內容,更多請關注TW511.COM其它相關文章!