Beyond‘s blog

IT/Web技术

【中国服务器】YouTube 视频缩略图无法显示

在中国服务器环境下(WordPress),仅仅将 YouTube 视频 URL 粘贴到文章中,缩略图是不会自动显示的。

通常情况下,WordPress 支持包括 YouTube 在内的主要视频平台,只需粘贴视频链接即可自动嵌入带有缩略图的视频。然而,在中国服务器上的 WordPress 中,这一自动嵌入功能往往无法正常工作。

这种现象主要是由于中国国内的网络环境和相关监管影响造成的,因此在处理视频时需要特别注意。本文将介绍 WordPress 视频嵌入的方法以及中国服务器环境下的特有限制。

在 WordPress 中嵌入视频的方法

在 WordPress 文章中插入视频的方法大致可以分为两种,每种方法都有其优缺点。

① 直接上传到本地服务器

〇 优点:不依赖外部服务,完全可控。适用于私密或有访问限制的网站。

〇 缺点:会占用服务器空间和带宽,可能导致网站加载速度下降。

② 嵌入外部平台(如 YouTube)的视频 UR

〇 优点:节省服务器资源,播放更流畅。此外,还可以提高在社交媒体上的传播效果。

〇 缺点:依赖外部服务,在中国服务器环境下可能无法正常工作。

此外,以下是 WordPress 支持自动嵌入的视频平台白名单(基于 Gutenberg 编辑器标准):
* 仅列出主要支持的平台,可用于自动将视频 URL 转换为嵌入内容。

Amazon、Animoto、Cloudup、CollegeHumor、Crowdsignal、Dailymotion、Facebook、Flickr、Hulu、Imgur、Instagram、Issuu、Kickstarter、Meetup.com、Mixcloud、Reddit、ReverbNation、Screencast、Scribd、Slideshare、SmugMug、Someecards、SoundCloud、Speaker Deck、Spotify、TED、Tumblr、VideoPress、Vimeo、WordPress.tv、X(旧:Twitter)、YouTube

在中国服务器上的注意事项:YouTube 自动嵌入失效

< 对于中国服务器上的 WordPress >

本文以 YouTube 为例进行说明。

通常情况下,在 WordPress 的可视化编辑器中粘贴 YouTube 等视频的链接时,WordPress 会内部调用 oEmbed API,从 YouTube 获取视频的元信息(如缩略图、视频标题等)。随后,WordPress 会自动将其转换为 iframe 格式,在文章中显示带缩略图的视频播放器。

然而,在中国服务器环境下,这一功能往往无法正常工作,可能出现缩略图无法显示或视频无法播放的问题。

其原因主要涉及以下技术因素。

① YouTube 资源在中国网络被屏蔽

YouTube 的缩略图(例如:https://img.youtube.com/vi/VIDEO_ID/hqdefault.jpg)以及 oEmbed 接口(https://www.youtube.com/oembed)的访问会被阻断。

因此,WordPress 无法从 YouTube 获取所需的元数据,导致缩略图无法生成。

② YouTube 的 Referer 或请求被防火墙丢弃

从中国服务器向 YouTube 直接发送请求时,数据包可能会被屏蔽。

尤其是获取缩略图的请求在中途被丢弃时,只会显示占位符(空白框),缩略图无法显示。

③ WordPress 的 oEmbed 缓存功能影响

WordPress 会将获取到的 YouTube oEmbed 数据缓存到数据库中。

但在中国服务器环境下,初次请求就失败,因此缓存中不会保存数据,导致之后的缩略图仍然为空。

技术性解决方案

< 在中国服务器上编写 iframe 代码 >

在这种情况下,需要在文本编辑器等中直接编写 iframe 代码,手动嵌入视频 URL。

* 但需要注意,视频本身在中国访问时仍可能被屏蔽,无法正常播放。

总结

在中国服务器环境下运营 WordPress 时,YouTube 的自动嵌入功能通常无法正常使用,因此需要通过 iframe 手动嵌入 等方式来解决。

如果视频内容的缩略图无法显示,可能会影响观看者的用户体验。因此,建议根据服务器的部署位置和目标用户,选择合适的视频发布方式。

● 网站制作、服务器搭建 — 服务咨询 ●

联系我们

  • ▼ 公司微信公众号(公司官方)▼

  • ▼ 直接联系负责人微信号 ▼

咨询/联系我们

CONTACT

咨询/联系我们

扫码关注微信公众号