开发支付功能时,发现openssl类的方法都找不到,大概知道是没有扩展,在网上收集了PHP开启openssl扩展的方法。

windows下开启方法:

1: 首先检查php.ini中;extension=php_openssl.dll是否存在, 如果存在的话去掉前面的注释符‘;’, 如果不存在这行,那么添加extension=php_openssl.dll。

2: 讲php文件夹下的: php_openssl.dll, ssleay32.dll, libeay32.dll 3个文件拷贝到 WINDOWS\system32\ 文件夹下。

3:如果没有 php_openssl.dll ,点击下载 php_openssl.dll

下载下来有很多个php_openssl,找到你相应php版本下面的php_openssl。

查看php版本可以用如下代码:

<?php
phpinfo();
?>

找到相应版本之后,按照上面讲的第二步来就可以了。

4: 重启apache或者iis

至此,openssl功能就开启了。

Linux下开启方法:

我使用的是阿里云ECS,PHP版本:php-5.5.7

下面方案就以我的主机为例讲解为PHP添加openssl模块支持。

网上一些答案说要重新编译PHP,添加configure参数,增加openssl的支持。这里讲一个不需要重新编译的方法。

如果服务器上存在PHP安装包文件最好,如果已经删除,去下载和phpinfo页面显示版本一样的PHP安装文件,我这里是 php-5.5.7.tar.gz

推荐去搜狐镜像下载,网易镜像没有找到。地址为: http://mirrors.sohu.com/php/

用ssh工具连接到主机。

# 下载到/var/www/php5目录下

cd /var/www/php5

wget http://mirrors.sohu.com/php/php-5.5.7.tar.gz

# 解压

tar zxvf php-5.5.7.tar.gz

# 进入PHP的openssl扩展模块目录

cd php-5.5.7/ext/openssl/

/var/www/php5/bin/phpize # 这里为你自己的phpize路径,如果找不到,使用whereis phpize查找

# 执行后,发现错误 无法找到config.m4 ,config0.m4就是config.m4。直接重命名

mv config0.m4 config.m4

/var/www/php5/bin/phpize

./configure --with-openssl --with-php-config=/var/www/php5/bin/php-config

make

make install

# 安装完成后,会返回一个.so文件(openssl.so)的目录。在此目录下把openssl.so 文件拷贝到你在php.ini 中指定的 extension_dir 下(在php.ini文件中查找:extension_dir =),我这里的目录是 var/www/php5/lib/php/extensions

# 编辑php.ini文件,在文件最后添加

extension=openssl.so

# 重启Apache即可

/usr/local/apache2/bin/apachectl restart

PHP开发支付时开启OPENSSL扩展的更多相关文章

  1. Laravel5 call to undefined function openssl cipher iv length() 报错 PHP7开启OpenSSL扩展失败

    在安装laravel5.5后, 访问显示报错. call to undefined function openssl cipher iv length() 经查为php7.1的OpenSSL扩展加载失 ...

  2. php安装时开启很多扩展,如果忘了开启某些扩展,以后还能加上吗?答案是可以的

    php配置时,这里面开启了很多扩展.如果这时候忘了开启,以后还能加上吗?答案是可以的.以后只需要进入源码的ext目录,例如忘了pdo_mysql,进入ext/pdo_mysql,使用phpize工具, ...

  3. php开启openssl扩展

    windows下开启方法: 1: 首先检查php.ini中:extension=php_openssl.dll是否存在, 如果存在的话去掉前面的注释符‘:’, 如果不存在这行,那么添加extensio ...

  4. PHPnow开启PHP扩展里openssl支持的方法

    PHPnow 是 Win32 下绿色的 Apache + PHP + MySQL 环境套件包.简易安装.快速搭建支持虚拟主机的 PHP 环境.更多介绍<PHP服务套件 PHPnow1.5.6&g ...

  5. 李洪强iOS开发支付集成之支付宝支付

    iOS开发支付集成之支付宝支付 下载支付宝SDK 首先是开发包下载,还是比较难发现的,网上以前文章中的链接都打不开,我找了好久才找到的.最新的地址在这里(注意的是下载出来的SDK包里面并没有传说中的开 ...

  6. php开启mbstring扩展并设置支持utf-8编码

    前一段时间使用一个服务的接口,因为调用接口时使用的参数里面有中文,调用接口会出现异常问题,后来才明白是编码不一致的问题.然而,我本地项目开发使用的是utf-8,接口那边也是需要utf-8的,那么问题来 ...

  7. windows服务器开启openssl

    windows服务器默认是没有开启openss的php扩展支持,不过一般服务器里面默认都已经安装了这个功能.自己开启一下就好,今天在安装某程序的时候,需要用到openss的支持,才发现windows服 ...

  8. php没有开启Memcache扩展类时

    模拟PHP Memcache 类.当服务器没有开启Memcache扩展的时候.可以采用本类使用方法class_exists('Memcache') or include './Memcache.cla ...

  9. 李洪强iOS开发支付集成之微信支付

    iOS开发支付集成之微信支付 微信支付也是需要签名的,也跟支付宝一样,可以在客户端签名,也可以在后台签名(当然,为了安全还是推荐在服务器上做签名,逻辑也比较好理解). 1 - 集成前首先要看看文档 开 ...

  10. [转载]IIS下开启php扩展失效? 感谢作者 本人泪流满面

    用户反应,空间不支持GD.系统环境是IIS PHP.   先用phpinfo探了一下,确实没有找到gd的影子.然后检查php.ini,发现gd扩展没有开启(windows下安装的php,其所有php扩 ...

随机推荐

  1. redis-creating server tcp listening socket 127.0.0.1:6379: bind No error

    安装redis,出现如下错误: 解决方法: 步骤1:命令行下输入:redis-cli.exe(注意不是redis-server.exe) 然后输入:shutdown exit 退出后输入.\redis ...

  2. slitaz5安装vim,sakura终端命令行打不开

    刚开始安装了vim后,vim提示libtinof.so.6打不开.在网上查,发现可能是库缺少.然后查看了依赖库文件 ldd /usr/bin/vim 发现果然缺少了 libncurses.so.6 的 ...

  3. 源码编译mariadb

    1.写一个一键安装 mariadb 数据库脚本. [root@centos8mini ~]#vim install_mariadb #!/bin/bash#安装包PACKAGE="maria ...

  4. (四)用go实现红黑树

    本篇文章我们用go来实现红黑树,部分参考资料如下: https://www.cnblogs.com/skywang12345/p/3245399.html#!comments https://blog ...

  5. 基于Nginx上的docker负载均衡

    1.首先需要拖拽镜像文件   docker  pull nginx 2.生成多个docker容器 docker run --name demo1 -d -p 8081:80 -v /data/demo ...

  6. c++文件中,头文件与实现文件该写什么内容

    1. 参考https://www.cnblogs.com/fenghuan/p/4794514.html

  7. axios响应拦截器无法显示响应头问题

    Access-Control-Expose-Headers 响应报头.跨域 公开响应头 问题现象: 前端无法获取响应头 Response Header 原因 问题原因:跨域问题 启用跨域请求(CORS ...

  8. vue打包添加时间戳,实现更新项目自动清除缓存

    本来vue打包会自动用chunkhash来解决缓存问题,但是部分浏览器不会自动更新,因此可以通过后面t=${ }的不同来实现自动重新加载文件,保持最新的界面 (1).webpack打包:修改build ...

  9. Linux 系统镜像分类和包管理工具

    查看系统版本 cat /proc/version 可以看到如下返回,Linux是RedHat系统 Linux version 4.18.0-372.9.1.el8.x86_64 (mockbuild@ ...

  10. Django ImageField 内置属性height,width和size

    ImageField实例使用height,width和size属性后,若后继操作需重新打开实例,其他模块方法才能调用实例,使用open()方法:>>> from PIL import ...