你好,
我们遇到了一个问题:从 Drupal 嵌入的相对路径链接图片(格式为 <img src="/link/to/image.jpg" />)在作为主题发布到 Discourse 后无法加载。我们认为这是因为它们是通过 discourseEmbedUrl 变量使用 HTTP 链接的;但我们的服务器通过 HTTPS 提供所有内容,导致图片链接失效。如果在开发者工具中手动修改链接(例如将 HTTP 改为 HTTPS),问题即可解决。
简而言之:是否可以让 Discourse 在嵌入图片时使用 discourseUrl 变量,而不是 discourseEmbedUrl?
以下是更详细的说明,解释了我们如何形成当前配置:
简言之,在我们切换到 HTTPS 之前创建的所有主题都使用了 HTTP 链接作为主题源。因此,当我们切换时,需要 discourseEmbedUrl 变量继续使用 HTTP 链接,否则会根据新的 HTTPS 主题源 URL 创建重复的 HTTPS 文章。
抱歉解释得这么长;对于此类情况,是否可以让嵌入图片使用与源 URL 不同的变量?目前我们似乎只有两个选择:
-
对图片使用与主题源 URL 相同的 discourseEmbedUrl 变量(HTTP),但这会导致图片损坏(因为在嵌入中似乎无法通过 HTTP 正确加载)
-
将 discourseEmbedUrl 变量改为 HTTPS,使图片正常显示,但每当访客执行嵌入代码时,由于使用的 discourseEmbedUrl 与其对应的主题源 URL 不同,会创建重复的主题
如果需要,我可以提供更多信息,请随时告知!