php 版本升級到7.1.3后,發(fā)現(xiàn) mcrypt加密算法不能用了瑟曲。推薦的替代方案就是openssl官硝,現(xiàn)記錄一下其安裝過程素邪。
1. 下載php源碼包
首先確定使用的php版本评雌,php -v仪媒,也可以在phpinfo()中查看败玉。
如圖劈愚,我的版本是7.1.3茄蚯。
下載并解壓压彭,進入PHP的openssl擴展模塊目錄
$wget http://mirrors.sohu.com/php/php-7.1.3.tar.gz$tar zxvf php-7.1.3.tar.gz$cd php-7.1.3/ext/openssl
編譯安裝
# $ which phpize 找到phpize應用位置/usr/bin/phpize# 然后執(zhí)行$ /usr/bin/phpize# 執(zhí)行后,發(fā)現(xiàn)錯誤 無法找到config.m4 渗常,config0.m4就是config.m4壮不。直接重命名$ cp config0.m4 config.m4# 重新執(zhí)行phpize$ /usr/bin/phpize# $ which php-config 找到php-config應用位置/usr/bin/php-config# 然后執(zhí)行$ ./configure --with-openssl --with-php-config=/usr/bin/php-config$ make$ make test$ sudo make install
安裝完成后,會返回一個.so文件(openssl.so)的目錄皱碘。在此目錄下把openssl.so文件拷貝到你在php.ini中指定的extension_dir下(在php.ini文件中查找:extension_dir =或者打印出phpinfo())询一,我這里的目錄是/usr/lib/php/20160303
在php配置文件添加 openssl 擴展
$/etc/php/7.1/mods-available$touch openssl.ini$sudo vim openssl.ini
文件內容為
; configuration for php openssl module; priority=20extension=openssl.so
重啟
sudo /etc/init.d/php7.1-fpmrestartsudo service nginxrestart
再次打印出phpinfo(),可以看到openssl相關的信息癌椿。