【问题标题】:Download image from https sources从 https 源下载图像
【发布时间】:2012-03-10 13:16:35
【问题描述】:

我已为我的网站启用 OpenId。但是,当我想下载用户头像并将其保存到我的服务器时,我不能。我尝试了几种方法,但都没有奏效。我应该注意,我的脚本适用于 http 文件,例如它适用于THIS FILE,但不适用于THIS URL。我知道我可以将https 更改为http 并下载图像。但是我想知道我应该怎么做才能从https下载文件?

【问题讨论】:

  • 我们需要更多信息,您如何获取这些图像(curl、file_ge_contents),以及错误是什么?也许是谷歌的一些限制......您也可以在没有 https 的情况下访问所有 picasa 照片,只需将 https 替换为 http 并获取图像
  • 正如我所说,我已经尝试了几种方法,但最简单的方法是copy($url, $filename);(目前正在使用)
  • copy 使用file_get_contents 下载文件,如果您尝试使用 curl 并且没有工作,请检查:stackoverflow.com/questions/316099/… 现在可以工作,但如果由于某种原因停止,请尝试使用fsockopen
  • “我想下载 [...] 我不能”。请告诉为什么不。您使用什么方法,遇到什么错误?
  • @CodeCaster:正如我在 cmets 和问题本身中所说,我使用了一些方法,例如 copy 函数、file_get_contentscURL 以及我发现的任何其他方法网络上。他们都没有工作。至于你问题的第一部分:why not,我不知道为什么不。这就是我问这个问题的原因。 ;)

标签: php https


【解决方案1】:

您使用什么操作系统?确保 PHP 编译时支持 OpenSSL。在某些发行版中,您必须安装诸如 php-openssl 之类的包,以便使用诸如 file_get_contents 或 cURL 之类的方法来处理 SSL。

【讨论】:

  • 我在 Windows 上。我怎么知道它是否受支持?
  • 查看<?php echo phpinfo();?>的输出,看看是否加载了OpenSSL模块。如果不是,请尝试将其添加到您的 php.ini 中。像extension=php_openssl.dll 这样的东西应该可以工作。
猜你喜欢
  • 1970-01-01
  • 2015-02-16
  • 2021-10-22
  • 1970-01-01
  • 2013-10-16
  • 1970-01-01
  • 2016-05-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多