新增模組到自訂編譯的 PHP

新增模組到自訂編譯的 PHP

在 CentOS 中,我有 PHP 的編譯版本,但缺少 IMAP 模組。是否可以在不重新編譯 php 的情況下添加該模組?

答案1

是的,您可以下載目前版​​本的原始碼,解壓縮它,進入解壓縮來源的 ext/imap 目錄,然後執行:

phpize
./configure
make

您可能需要執行 ./configure 並使用一些指定所使用的 imap 函式庫的選項,例如:

  --with-imap=DIR       Include IMAP support. DIR is the c-client install prefix
  ...
  --with-imap-ssl=DIR     IMAP: Include SSL support. DIR is the OpenSSL install prefix

編譯模組後,您應該將其放置在 ext/imap/modules 下,它應該命名為 imap.so,例如 ext/imap/modules/imap.so。您需要將其進一步移至extension_dir目錄,您可以透過執行php -i | grep extension_dir或建立php檔案來取得目錄,該檔案將說明<?php phpinfo(); ?>並從Web介面運行它,然後在結果頁面上搜尋extension_dir。

移動模組檔案後,您需要在 php.ini 檔案中新增一行(或在附加 .ini 檔案目錄中建立一個 .ini 檔案),內容如下:

extension=imap.so

之後,如果您使用 php-fpm,則需要重新啟動 Web 伺服器或 php-fpm 服務。

相關內容