php - 图片不显示 https

标签 php ssl image https

访问 https 页面时,我的图像突然没有显示在我的网站上。我的代码没有变化。在我的请求之后,我的主机确实必须重新编译他们的带有 SSL 支持的 ftp 服务(这样我就可以 ftpe 我的网站)。不能做任何会影响我的 SSL 证书的事情。同样的事情发生在 FF 和 IE 以及不同的计算机上。

最佳答案

如果我访问您的网站( https://www.scfootball.org/ ),我看不到图像,如您所说:我得到一个 403 (Forbidden) error对于其中的每一个——我可以使用 Firefox 扩展的“网络”选项卡看到它 Firebug ,例如。

如果我尝试直接查看图片,而不是通过网站(例如:https://www.scfootball.org/widgets/GulloParkHeader.png),那么我可以看到图片。
如果你尝试,请确保将 URL 复制粘贴到新的选项卡/窗口,而不是直接点击它

这意味着网站和图像访问之间存在某种问题;而不是图像本身。


如果我禁用 referer在 Firefox 中(web developper toolbar 扩展可以轻松做到这一点) 并刷新您网站的网页,图像就会出现。

如果我重新启用 referer,并再次刷新,那么图像就不会再出现了。

这意味着有一些与 referer 相关的东西阻止了图像的发送,而是返回了 403 错误。


只是一个疯狂的猜测:也许在你的 widgets 目录 (或其他地方) 中有一个 .htaccess 阻止提供图像,如果 referer不对应于特定域?

考虑到当我在没有 HTTPS (即使用 http://www.scfootball.org/index2.php 之类的 URL)访问网站时图像显示在网站上,可能有适当的“保护”,因此您的图像不会如果 Referer 不是那个非 https 网站就会显示...而且当你切换到 HTTPS 时那个“保护”还没有更新?

(例如,我见过用于防止图像热链接的那种“保护”)

关于php - 图片不显示 https,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1963704/

相关文章:

java - 如何使用 HttpsUrlConnection 通过 SSL 连接使用代理身份验证?

amazon-web-services - 如何排查 AWS 目标组中的不健康状态代码

python - 在Python中绘制单色bmp格式

ImageSource 未释放并创建 OutOfMemoryException

javascript - cakephp - 电子邮件的验证规则是什么

php - 如何检索社交网站的自定义用户搜索结果

ssl - 如果客户端未通过证书,https 连接的安全性如何

Javascript - 出现正在加载 gif

php - 使用mysql数据显示JPGraph

php - is_numeric、intval、ctype_digit .. 你可以依赖它们吗?