为图片使用绝对链接

如果你通过 image 按钮将图片上传到 Discourse,主题 HTML 中使用的 URL 是相对路径。

其他 Markdown 解析器(如 GitHub)则会将所有此类 URL 转换为绝对路径。

这对于通过 API 提取标记内容(例如)会很有帮助,因为这意味着这些 URL 在任何上下文中都能继续正常工作且含义明确。

真的是这样吗?

你的帖子显示为:

<p dir="ltr">
  如果你通过
  <img src="https://d11a6trkgmumsb.cloudfront.net/original/3X/3/3/334422a7f2abc1e7463a3450ae1834748b842da7.png" alt="image" data-base62-sha1="7jwktUgPUE9mp7Jb4gYTYH5wDYj" width="36" height="34"> 
  按钮将图片上传到 Discourse,主题 HTML 中使用的 URL 是相对路径。
</p>

这在我这里看起来是绝对路径。

2 个赞

Meta.discourse.org 显然已配置为将资源上传到某种资源服务器。在这种情况下,URL 必须是绝对路径,否则根本无法正常工作。

但这并不适用于例如 https://discourse.ubuntu.com/,因此我推测这并非默认设置。默认情况似乎是资源上传到同一站点,因此使用相对 URL。

我建议完全不使用相对 URL。

1 个赞

因此,我正在检查 Ubuntu Desktop on Raspberry Pi Feedback - Desktop - Ubuntu Community Hub 中的这个话题:

<div class="cooked"><p>我们很高兴将 Ubuntu Desktop 20.10 引入 Raspberry Pi 4,从而完善了 Raspberry Pi 的 Ubuntu 产品系列。我们鼓励您试用并提供反馈,以便我们持续改进 Ubuntu(包括桌面版、服务器版和核心版)在 Raspberry Pi 上的表现<img src="https://discourse.ubuntu.com/images/emoji/emoji_one/chart_with_upwards_trend.png?v=9" title=":chart_with_upwards_trend:" class="emoji" alt=":chart_with_upwards_trend:">。</p>
<p></p><div class="lightbox-wrapper"><a class="lightbox" href="//ubuntucommunity.s3.dualstack.us-east-2.amazonaws.com/original/2X/5/538181beb312f73b48c34e93c96ec5ca15e98734.jpeg" title="Groovy-Gorilla_WP_1920x1080_RPi.jpg" rel="nofollow noopener"><img src="https://ubuntucommunity.s3.dualstack.us-east-2.amazonaws.com/optimized/2X/5/538181beb312f73b48c34e93c96ec5ca15e98734_2_690x388.jpeg" alt="Groovy-Gorilla_WP_1920x1080_RPi" data-base62-sha1="bUJ61kFOTd09on4dBLyNSmfKJw0" class="d-lazyload" srcset="//ubuntucommunity.s3.dualstack.us-east-2.amazonaws.com/optimized/2X/5/538181beb312f73b48c34e93c96ec5ca15e98734_2_690x388.jpeg, //ubuntucommunity.s3.dualstack.us-east-2.amazonaws.com/optimized/2X/5/538181beb312f73b48c34e93c96ec5ca15e98734_2_1035x582.jpeg 1.5x, //ubuntucommunity.s3.dualstack.us-east-2.amazonaws.com/optimized/2X/5/538181beb312f73b48c34e93c96ec5ca15e98734_2_1380x776.jpeg 2x" width="690" height="388"><div class="meta">
<svg class="fa d-icon d-icon-far-image svg-icon" aria-hidden="true"><use xlink:href="#far-image"></use></svg><span class="filename">Groovy-Gorilla_WP_1920x1080_RPi.jpg</span><span class="informations">1920×1080 143 KB</span><svg class="fa d-icon d-icon-discourse-expand svg-icon" aria-hidden="true"><use xlink:href="#discourse-expand"></use></svg>
</div></a></div><p></p>
<p>在下面的视频中,我们介绍了 Raspberry Pi 的 Ubuntu Desktop,以及如何设置并开始使用。</p>
<p><a href="https://youtu.be/0pT4-RcTERU" class="onebox" target="_blank" rel="nofollow noopener">https://youtu.be/0pT4-RcTERU <span class="badge badge-notification clicks" title="27 clicks">27</span></a></p>
<p>如果您更喜欢,这里还有入门教程:</p>
<p><img src="https://discourse.ubuntu.com/images/emoji/emoji_one/woman_student.png?v=9" title=":woman_student:" class="emoji" alt=":woman_student:"><a href="https://ubuntu.com/tutorials/how-to-install-ubuntu-desktop-on-raspberry-pi-4#1-overview" rel="nofollow noopener">如何在 Raspberry Pi 4 上安装 Ubuntu Desktop <span class="badge badge-notification clicks" title="56 clicks">56</span></a></p>
<p><img src="https://discourse.ubuntu.com/images/emoji/emoji_one/man_student.png?v=9" title=":man_student:" class="emoji" alt=":man_student:"><a href="https://ubuntu.com/tutorials/how-to-install-ubuntu-on-your-raspberry-pi#1-overview" rel="nofollow noopener">如何在您的 Raspberry Pi 上安装 Ubuntu Server <span class="badge badge-notification clicks" title="22 clicks">22</span></a></p>
<p><strong>您希望在 Raspberry Pi 上看到哪些应用程序?</strong></p>
<p>虽然绝大多数 Ubuntu 软件库资源都可用于 ARM 设备,但并非所有开发者和独立软件供应商(ISV)都在 <a href="https://snapcraft.io/store" rel="nofollow noopener">Snap Store <span class="badge badge-notification clicks" title="7 clicks">7</span></a> 或其各自的网站上发布其软件的 ARM 版本。请在下方留言,告诉我们您在 Raspberry Pi/ARM 上最希望看到哪些缺失的软件 <img src="https://discourse.ubuntu.com/images/emoji/emoji_one/eyes.png?v=9" title=":eyes:" class="emoji" alt=":eyes:"> 可供使用,我们将尽力而为。</p>
<p><strong>您正在使用哪些 HAT?</strong></p>
<p>Raspberry Pi 拥有丰富的 HAT(硬件附加模块)生态系统,我们计划在接下来的几个月内扩展 Ubuntu 中可用的 HAT <img src="https://discourse.ubuntu.com/images/emoji/emoji_one/tophat.png?v=9" title=":tophat:" class="emoji" alt=":tophat:"> 模块/驱动程序库。请告诉我们您在项目中使用了哪些 HAT,以便我们更好地了解工作的优先顺序。</p>
<p><strong>其他硬件?</strong></p>
<p>摄像头、显示器、GPIO、触摸屏、USB 配件等。您在使用现有配件和外设将 Raspberry Pi 与 Ubuntu 配合使用时的体验如何?</p>
<p><strong>您正在用 Raspberry Pi 上的 Ubuntu 制作什么?</strong></p>
<p>最后,向我们展示您正在 Raspberry Pi 上使用 Ubuntu Desktop,或者您用它来做什么,就有机会赢取免费的 Groovy Gorilla <img src="https://discourse.ubuntu.com/images/emoji/emoji_one/gorilla.png?v=9" title=":gorilla:" class="emoji" alt=":gorilla:"><img src="https://discourse.ubuntu.com/images/emoji/emoji_one/dark_sunglasses.png?v=9" title=":dark_sunglasses:" class="emoji" alt=":dark_sunglasses:"> 周边礼品。请成为首批填写此表单的人:<a href="https://forms.gle/h9wodaFLFYPGps8y6" rel="nofollow noopener">https://forms.gle/h9wodaFLFYPGps8y6 <span class="badge badge-notification clicks" title="38 clicks">38</span></a></p></div>

对我来说,这些看起来都是绝对 URL。

我还在一个没有 CDN 的测试实例中进行了测试,结果也显示使用的是绝对 URL。

我们还有一个功能请求 Need relative URLs for uploaded images

1 个赞

啊,抱歉,也许在最近的一次升级中已经修复了,或者有其他情况。

我会看看能否复现我们之前遇到的问题,然后给您回复。

1 个赞