Call to undefined function openssl_decrypt() 解决办法

今天我的一位朋友在做项目的时候遇到这样一个问题,如下图:

Call to undefined function openssl_decrypt()

 

原因:

不管你是用框架,还是用其它的,只要出现这个问题,都是因为PHP扩展openssl没有开启或安装。

 

特别注意:

这里有一个注意的事项,看openssl是否开启?一定要查看phpinfo,要以phpinfo为主。

 

像我的这位朋友,他说他已经安装了openssl,怎么还会出现这个问题?

结果我在他的linux服务器下查看,openssl的确是有的,但是当查看phpinfo的时候,却没有openssl。

linux下openssl

 

解决办法:

 

一、windows下PHP开启openssl扩展方法:

这个就非常的简单了,直接去php.ini去掉;extension=php_openssl.dll前面的;即可!

然后再重启apache!

extension=php_openssl.dll

 

二、Linux下PHP安装openssl扩展方法:

PHP安装openssl扩展方法其实有很多的,我就用最常见最稳定的方法来给大家展示吧!PHP源码包下安装openssl扩展:

 

1、进入php源码包 ext/openssl 目录下;

cd /usr/local/php5.5.28/ext/openssl

 

2、进入openssl目录下后,先使用phpize命令生成一个configure文件;

/usr/local/php/bin/phpize

 

3、配置;

./configure --with-php-config=/usr/local/php/bin/php-config

 

4、编译和安装;

make && make install

成功以后会出现一个类似这样的路径:

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/***

 

5、安装完成后需要在php.ini文件中添加一条记录:

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/openssl.so

 

6、重启php,再查看phpinfo()就会看到openssl扩展已开启。

 

注意:linux中上面的命令路径请根据自身的情况来调整。

    A+
发布日期:2018年07月31日 13:12:37  所属分类:PHP
最后更新时间:2018-07-31 13:13:29
付杰
  • ¥ 79.0元
  • 市场价:129.0元
  • ¥ 99.0元
  • 市场价:99.0元
  • ¥ 199.0元
  • 市场价:199.0元
  • ¥ 68.0元
  • 市场价:168.0元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: