php获取远程https内容时提示 PHP Warning: copy(): Unable to find the wrapper “https“ 解决方法

异常信息:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

PHP Warning: copy(): Unable to find the wrapper "https" - did you forget to enable it when you configured PHP? in Command line code on line 1

PHP Stack trace:

PHP 1. {main}() Command line code:0

PHP 2. copy(source_file = 'https://getcomposer.org/installer', destination_file = 'composer-setup.php') Command line code:1

Warning: copy(): Unable to find the wrapper "https" - did you forget to enable it when you configured PHP? in Command line code on line 1

Call Stack:

0.0001 388024 1. {main}() Command line code:0

0.0008 388024 2. copy(source_file = 'https://getcomposer.org/installer', destination_file = 'composer-setup.php') Command line code:1

异常原因

这个异常是因为当前的php没有配置openssl模块, 所以在php访问https的内容时就提示 Unable to find the wrapper "https" 异常。

解决方法: 安装 openssl扩展

在macos中通过macport安装php后,默认是没有安装openssl扩展的, 需要我们手动安装一下这个openssl的扩展。

bash 复制代码
# 首先确定当前php版本
php -version

# 然后安装 openssl扩展 , 这里以php7.2版本为例
sudo port install php72-openssl

如果你的php非port安装的,解决方法也是一样的,安装对应php的 openssl 扩展即可。

通过port search查找可用的php openssl扩展包参考

命令: port search --name --line --regex '^php(\d+)-openssl'

相关推荐
Chase_______2 分钟前
【Python 基础】第4章:函数模块与包完全指南(函数/模块/包)
开发语言·python
众创岛3 分钟前
测试失败时自动截图并附加到 Allure 报告
开发语言·python
csbysj20209 分钟前
SQL CREATE DATABASE 指令详解
开发语言
我命由我1234511 分钟前
React - useEffect、useRef、Fragment
开发语言·前端·javascript·react.js·前端框架·ecmascript·js
未来龙皇小蓝12 分钟前
Java安全通信:RSA签名 + AES混合加密详解
java·开发语言·安全·web安全
heimeiyingwang15 分钟前
【架构实战】混沌工程:让系统更健壮的实践
开发语言·架构·php
cch891816 分钟前
PHP vs C#:语言对比与实战选型
开发语言·c#·php
KevinCyao17 分钟前
Ruby短信营销接口示例代码:Ruby开发环境下营销短信API接口的集成与Demo演示
开发语言·前端·ruby
新缸中之脑20 分钟前
FineTune Studio:Mac微调AI工具
人工智能·macos
让学习成为一种生活方式20 分钟前
取消“为 LAN 使用代理服务器”--随笔023
开发语言·php