PHP未启用openssl扩展会导致SSL函数失败等问题,需通过修改php.ini、集成环境图形界面、Linux包管理器、Homebrew重装或验证测试等方法启用并确认生效。
如果您在浏览器中运行PHP脚本时遇到SSL相关函数调用失败、cURL HTTPS请求报错或Composer无法连接
远程仓库等问题,则可能是PHP未启用openssl扩展。以下是开启openssl扩展的多种方法:
openssl扩展默认编译进PHP,但可能被注释禁用。需编辑PHP配置文件php.ini,取消对openssl扩展的注释。
1、找到php.ini文件所在路径,可通过phpinfo()页面或命令行执行php --ini确认。
2、使用文本编辑器打开php.ini文件。
3、搜索extension=openssl或extension=php_openssl.dll(Windows)或extension=php_openssl.so(Linux/macOS)。
4、若该行以分号;开头,则删除分号使其生效:extension=openssl(PHP 8.0+推荐写法)或extension=php_openssl.dll(Windows旧版本)。
5、保存php.ini文件。
6、重启Web服务器(如Apache或Nginx)或PHP-FPM服务。
集成环境通常提供图形化开关,避免手动编辑配置文件出错。
1、打开XAMPP控制面板,点击Apache右侧的Config按钮。
2、选择PHP (php.ini),在打开的文件中定位openssl配置项。
3、取消注释extension=openssl并保存。
4、在XAMPP控制面板中停止再启动Apache服务。
5、对于WAMP,左键点击系统托盘图标,依次选择PHP → PHP Extensions → openssl,勾选后等待自动重启。
部分Linux发行版的PHP最小化安装不包含openssl扩展,需单独安装扩展包并确保模块加载。
1、Ubuntu/Debian系统执行:sudo apt install php-opcache php-curl php-xml php-zip php-mbstring(其中php-curl依赖openssl)。
2、CentOS/RHEL系统执行:sudo yum install php-common php-cli php-curl 或 sudo dnf install php-common php-cli php-curl。
3、确认openssl扩展文件存在:ls /usr/lib/php/*/openssl.so 或 find /usr -name "openssl.so" 2>/dev/null。
4、若php.ini中无对应extension指令,在/etc/php/*/mods-available/目录下创建openssl.ini,内容为extension=openssl。
5、启用配置:sudo phpenmod -s ALL openssl(Debian/Ubuntu)或手动在php.ini中添加扩展行。
6、重启Web服务器:sudo systemctl restart apache2 或 sudo systemctl restart php-fpm。
Homebrew安装的PHP默认启用openssl,但若使用自定义编译或旧版本,可能需重新链接依赖。
1、确认已安装OpenSSL:brew install openssl。
2、查看当前PHP是否链接到Homebrew OpenSSL:php -i | grep -i openssl,检查OpenSSL Library Version和OpenSSL Header Version是否非空。
3、若未启用,重新安装PHP并强制绑定:brew reinstall php --with-openssl(适用于旧版brew)或升级至新版后执行brew unlink php && brew link php。
4、验证扩展是否加载:php -m | grep openssl应输出openssl。
启用操作完成后,必须验证扩展是否实际载入且功能可用,避免配置未生效或路径错误。
1、创建测试文件test_openssl.php,内容为:
2、在浏览器中访问该文件,返回bool(true)表示扩展已加载。
3、进一步测试HTTPS请求能力:。
4、命令行执行:php -r "print_r(openssl_get_cipher_methods());",若输出加密算法列表则表明功能完整。
# php
# linux
# centos
# composer
# windows
# apache
# nginx
# 浏览器
# ubuntu
# echo
# NULL
# xml
# cURL
# bool
# macos
# 算法
# https
# ssl
# debian
# 加密算法
# 管理器
# 加载
# 重启
# 命令行
# 配置文件
# 器中
# 旧版本
# 适用于
# 自定义
# 使其
相关栏目:
【
Google疑问12 】
【
Facebook疑问10 】
【
网络优化76771 】
【
技术知识130152 】
【
IDC云计算60162 】
【
营销推广131313 】
【
AI优化88182 】
【
百度推广37138 】
【
网站推荐60173 】
【
精选阅读31334 】
相关推荐:
php本地部署后session无法保存_session存储路径与权限设置技巧【技巧】
Mac的“预览”如何合并多个PDF_Mac文件处理技巧【效率】
Win11怎样安装剪映专业版_Win11安装剪映教程【步骤】
Python列表推导式与字典推导式教程_简化代码高效写法
Win11怎么设置开机问候语_自定义Win11锁屏提示信息【技巧】
Win11如何设置系统声音_Win11系统声音调整教程【攻略】
mac怎么右键_MAC鼠标右键设置与触控板手势技巧【入门】
如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法
c# await 一个已经完成的Task会发生什么
Win11怎么禁用键盘自带键盘_Win11笔记本禁用内置键盘方法【教程】
c# 如何用c#实现一个支持优先级的任务队列
Win10闹钟铃声怎么自定义 Win10闹钟自定义铃声教程【方法】
如何使用Golang安装API文档生成工具_快速生成接口文档
Win10如何卸载自带Edge_Win10彻底卸载Edge浏览器教程【攻略】
如何在 Windows 11 中使用 AlomWare 工具箱
作用域操作符会影响性能吗_php静态调用性能分析【教程】
c++输入输出流 c++ cin与cout格式化输出【方法】
php下载安装包太大怎么下载_分卷压缩下载方法【教程】
Python异步网络编程_aiohttp说明【指导】
Win11如何设置文件关联 Win11修改特定文件类型的默认打开程序【详解】
如何减少Golang内存碎片化_Golang内存分配与回收优化方法
如何关闭Win10自动更新更新_Win10系统自动更新双重关闭技巧
VSC里PHP变量未定义报错怎么解决_错误抑制技巧【解答】
如何在Golang中实现微服务负载均衡_Golang负载均衡策略与实现示例
Win11怎么关闭贴靠布局_Win11禁用窗口最大化时的布局菜单
Win11怎么关闭OneDrive同步_Win11取消自动备份文件【教程】
如何优化Golang Web性能_Golang HTTP服务器性能提升方法
如何使用Golang捕获并记录协程panic_保证主程序稳定运行
c++ atoi和atof函数用法_c++字符数组转数字
如何使用Golang反射创建map对象_动态生成键值映射
Mac如何创建和管理多个桌面空间_Mac高效多任务处理【技巧】
Mac怎么查看活动监视器_理解Mac进程和资源占用【指南】
如何在JavaScript中动态拼接PHP的base_url与JS变量
Golang如何遍历目录文件_Golang filepath.Walk目录遍历操作方法
Windows服务无法启动错误1067是什么_进程意外终止的解决方法
如何理解Go指针和内存分配关系_Go Pointer内存Model解析
Win10怎么卸载迅雷_Win10彻底卸载迅雷方法【步骤】
php高频调试功能有哪些_php常用调试函数与工具汇总【解答】
如何使用Golang table-driven fuzz测试_多数据随机化发现缺陷
Windows10系统怎么查看已安装更新_Win10控制面板卸载补丁
Windows怎样关闭开始菜单推荐广告_Windows关闭开始菜单推荐设置【步骤】
Win11如何设置电源计划_Win11电源计划优化教程【攻略】
php8.4新语法match怎么用_php8.4match表达式替代switch【方法】
Windows10蓝屏SYSTEM_SERVICE_EXCEPTION_Win10驱动冲突排查
Win11怎么更改盘符_Win11磁盘管理修改驱动器号【步骤】
Win10系统映像怎么恢复 Win10使用系统映像还原电脑【指南】
Win11文件夹预览图不显示怎么办_Win11缩略图缓存重建修复【教程】
php订单日志怎么按状态筛选_php筛选不同状态订单日志教程【教程】
GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?
Windows10系统怎么查看运行时间_Win10 CPU正常运行时间查询
2025-12-26
致胜网络推广营销网专注海外推广十年,是谷歌推广.Facebook广告全球合作伙伴,我们精英化的技术团队为企业提供谷歌海外推广+外贸网站建设+网站维护运营+Google SEO优化+社交营销为您提供一站式海外营销服务。