如何在源碼包編譯安裝的 LEMP 環境下開啟 OpenSSL 功能
Hello,大家好!我是——邪惡君子!
今天,給大家分享一下解決源碼包編譯安裝 LEMP 環境下開啟 OpenSSL 功能問題的過程。前幾天,在訪問頁面時,突然報錯,要求開啟 openssl 功能。那怎麼辦呢,首先想到的是 yum 安裝,但是,安裝後還是沒解決,因為 LEMP 的環境是源碼包編譯安裝的,所以,還需要編譯安裝 openssl。
經過邪惡不懈的努力,終於找到了解決辦法,而且真的成功了,下面就給大家分享一下!
首先,要確保 LEMP 環境是源碼包編譯安裝的,並且要清楚 PHP 的安裝目錄在哪裡。
其次,可以通過 yum 源的方式或者源碼包編譯安裝 OpenSSL、OpenSSL-devel 兩個包。
然後,進入到 PHP 解壓出來的目錄裡面,我這裡的目錄是 PHP-5.4.24。在 PHP 目錄下,會有一個 ext 的擴展目錄,進入裡面,找到並進入 openssl 的目錄。這時,我們所在的目錄是:/root/php-5.4.24/ext/openssl
這個目錄下會有如下文件,看圖:
然後,執行 /usr/local/php5/bin/phpize 命令(在執行前要確保已安裝 m4 和 autoconf 兩個工具,否則會報錯)。
注意:這裡是我的phpize路徑,根據自己的安裝路徑執行;如果找不到,使用 whereis phpize 查找。如果執行時報錯無法找到 config.m4 文件,那麼就把目錄下面的 config0.m4 重命名 config.m4,因為 config0.m4就是config.m4 的模版。
如果命令成功執行完畢,那麼目錄下面就會自動多出個 configure 文件,這時,只需要編譯安裝就行了。過程如下:
# ./configure --with-openssl --with-php-config=/usr/local/php5/bin/php-config
# make && make install
耐心等候,安裝完成後,會在當前的modules目錄下面多出一個openssl.so文件;然後在php.ini配置文件最後面加上如下一行內容:
extension=openssl.so
然後,重啟nginx服務和php-fpm,就可以了!
至此,在源碼編譯安裝LNMP環境下開啟openssl功能成功解決!
如果有在操作中遇到啥問題,可以留言交流一下,共同學習,共同進步!
Personal Home Page:http://linux.cn/space/16475
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive