https://try.discourse.org/ 可以正常工作,但 https://try.discourse.org// 在 Safari 和 Chrome 中会挂起并显示空白页面。
这包括 meta.discourse.org,例如在域名后添加一个斜杠:
https://meta.discourse.org//top/weekly 也会挂起。
https://try.discourse.org/ 可以正常工作,但 https://try.discourse.org// 在 Safari 和 Chrome 中会挂起并显示空白页面。
这包括 meta.discourse.org,例如在域名后添加一个斜杠:
https://meta.discourse.org//top/weekly 也会挂起。
问题出在多余的那个斜杠上,它导致页面无法加载。使用单个斜杠时一切正常。为什么你似乎坚持要在 URL 末尾添加一个额外的斜杠?
如果我在论坛 URL 末尾使用双斜杠,也会出现同样的情况——空白页面……正如预期那样。
我已了解原因。如果在浏览器的地址栏中输入论坛的域名,它会自动补全为单个斜杠,但用户在末尾多输入一个斜杠,那么任何 Discourse 论坛都会显示空白页面——这不是期望的行为,该问题可复现,并且在所有 URI 上表现一致。
另一个问题是,由于空白页面格式不会抛出错误,浏览器的自动补全功能可能会因此添加双斜杠。只要浏览器不清除其自动补全历史记录,这些论坛将永远显示为空白。
如果您输入 https://apnews.com//,会被重定向到美联社网站并收到 404 错误(页面未找到),不会加载任何内容。我注意到的唯一区别是:美联社会返回 404 错误,而 Discourse 站点则只显示空白页面(不显示 404)。
自动补全功能在输入时仍然只在末尾显示一个斜杠。
所以,也许这个“缺陷”并不是在使用双斜杠时不返回 404 错误?
该“错误”导致论坛软件仍会加载数兆字节的数据,只是 Safari 和 Chrome 控制台未将其显示出来。
当 URL 重定向和/或路由期望单个斜杠时,出现双斜杠会“破坏”预期行为。在静态页面上,您可能(很可能会)让所有内容正常加载。但在动态页面上,问题就会在此处出现。甚至一些直接分析 URL 的 CGI 应用程序也会失败。某些服务器甚至会将多个斜杠视为一种攻击形式,尤其是当双斜杠出现在 URL 中间时。
也许 Discourse 团队中的一员能更好地解释 Discourse 如何响应多个斜杠。但在这种情况下,返回 404 错误会更合适。
这不是一个 bug,我支持改进这里的 404 页面,或者进行重定向,亦或是其他方案。
也许我们的 Ember 路由中存在一个微不足道的改动,我不确定,将交由 Ember 专家来处理。
我相当确定 Ember 早就修复了这个问题,这很可能是我们的自定义位置相关功能或类似原因导致的。
我今晚会查看一下。
这应该能解决问题:
extra / 将显示论坛的背景,teshghost.tk//(你可以看到我的背景壁纸)
本主题在最后一条回复后 5 天自动关闭,不再接受新回复。