嗯,@hellekin 认为这值得单独开一个主题。我不太确定它是否已经准备好,但先在这里发布。我会在下周初查看相关内容,并努力确保它看起来是其他人真正能用的东西。![]()
正如他所说:
嗯,@hellekin 认为这值得单独开一个主题。我不太确定它是否已经准备好,但先在这里发布。我会在下周初查看相关内容,并努力确保它看起来是其他人真正能用的东西。![]()
正如他所说:
@pfaffman 我尝试了以下设置:
home_url_override 设置为 https://thx.zoethical.org/TransHack_·Xist·nce… location = /TransHack_·Xist·nce… {
default_type text/html;
alias /srv/www/zoethical.org/thx/home.html;
}
直接调用该文件可以正常工作,但访问 https://thx.zoethical.org 却失败。我注意到系统会检查固定链接,因此尝试为 / 添加一个固定链接,但仍未奏效。这是否可能是缓存问题?
供参考,这是 home.html 文件的内容:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title> TransHack ·Xist·nce… </title>
<link rel="stylesheet" href="/thx.css">
</head>
<body class="thx home">
<header>
<h1>THX</h1>
</header>
<section id="agora">
<h2><a href="https://thx.zoethical.org/c/agora/1">Agora</a></h2>
<d-topics-list discourse-url="https://thx.zoethical.org" per-page="5" category="1"></d-topics-list>
</section>
<section id="fonderie-de-fiction">
<h2><a href="https://thx.zoethical.org/c/fonderie-de-fiction/7">Fonderie de fiction</a></h2>
<d-topics-list discourse-url="https://thx.zoethical.org" per-page="5" category="7"></d-topics-list>
</section>
<script src="https://thx.zoethical.org/javascripts/embed-topics.js"></script>
</body>
</html>
编辑:我猜这可能是由于该实例需要登录(SSO),在这种情况下出现了功能异常。我可能愿意进行更多测试,包括更开放地访问该实例。即使将站点渲染为公开,访问主页时仍然显示“哎呀!该页面不存在或是私有的”。有什么想法吗?
您要在 Discourse 网站上设置的首页是哪一个?我认为您只需要输入以 / 开头的 URL。
哦,所以文件应该是默认的——通常是 index.html?
确实有效!组件期望 URL 指向一个 index 文件,对吧?
我只需将我的 home.html 重命名为 index.html,并将 Nginx 配置更改为:
# 更多配置...
root /srv/www/zoethical.org/thx;
index index.html; # <- 这很重要
location = /TransHack_·Xist·nce… {
default_type text/html;
alias /srv/www/zoethical.org/thx/index.html; # <- 并且需匹配
}
location / {
# nginx 魔法:在代理之前尝试本地文件...
try_files $uri $uri/ $uri.html @discourse;
}
location @discourse {
# 正常的 Discourse 代理
}
如果你在 Discourse 实例所在的同一个站点上使用静态页面,请确保你的 Web 服务器在将请求代理到 Discourse 之前先读取静态文件(例如相关的 CSS)。搞定!
感谢 @pfaffman!
实际上还有一个 bug:虽然从外部访问 URL https://thx.zoethical.org 可以正常工作,但在 Discourse 内部点击徽标时,却无法返回被覆盖的页面。我注意到有一个固定链接检查,因此尝试了以下几种方案,但均未成功:
https://thx.zoethical.org 到 /index.html 的固定链接https://thx.zoethical.org 到 /TransHack_·Xist·nce… 的固定链接/index.html 到 /TransHack_·Xist·nce… 的固定链接结合使用/TransHack_·Xist·nce… 的重定向custom_url 固定链接并将其指向外部 URL我推测问题在于,点击徽标时脚本并未尝试重新加载整个应用,而是期望顶部路径绑定的是内部链接。
我期望的是,当 homepage_url_override 或(例如)custom_url 固定链接指向绝对 URL 时,页面应进行完整重新加载。