Inserting Javascript yields 403 error

According to previous posts in this forum, it should be possible to insert custom Javascript code into the or fields of the default theme, but whenever I try to do so, I get a popup saying “403 error”. Given that I am the admin but not a developer, how can I add my one line of custom Javascript?

2 个赞

You may have no permission to using the scripts resources by some Referrer-Policy, make sure it’s public access or others right permission.

我也遇到了同样的问题。你解决了吗,@Judith

即使是使用 <script></script> 的测试也给我返回了 403,所以我不太确定这是否是 Referrer-Policy 的问题?

很遗憾不是 :frowning:

您能否提供更多关于您想添加的内容及其位置的详细信息?这样可能会引起更多社区的响应?

1 个赞

它在任何级别都会失败。我转到“默认主题”>“编辑 CSS/HTML”>“通用”>“标题”,并尝试添加

<script>
alert("Test");
</script>

即使这样也会失败,并弹出一个“403 错误”消息,所以我没有尝试做任何更复杂的事情。

我在 DigitalOcean 上有一个完全按照说明进行的标准安装,并且已更新到最新版本。是否需要更改标准安装的任何内容才能使用 Javascript?

我認為這沒什麼用,所以先把它收起來……

可以試著將其添加為自定義主題組件嗎?

快速操作指南:

  • 前往 /admin/customize/themes
  • 點擊 安裝,然後點擊 創建新
  • 給它命名,然後選擇「組件」。
  • 創建
  • 將其添加到您的主題
  • 點擊 編輯 CSS/HTML 按鈕,然後在此處進行更改

然後保存。:+1:


不過,我也在我的默認主題標頭中測試過,那也奏效了。所以您的設置可能有些不尋常。在安全模式下觸發它時,它是否有效?

等等,這聽起來很熟悉。您是否有可以關閉的瀏覽器擴展程序?(或嘗試在隱私窗口中操作)控制台中是否有更多關於錯誤的詳細信息?

您在 Discourse 前面使用了任何类型的 Web 应用程序防火墙(例如 Cloudflare 或 AWS WAF)吗?它可能将其检测为跨站脚本攻击。

“头部”怎么样,而不是“标题”?

2 个赞

一周前在我测试的 Discourse 实例上并没有出现此错误,但本周出现了。
我尝试了所有可能的位置,但老实说,JS 应该放在闭合 body 标签之前,而不是放在 head 中,所以我想让它放在那里(而且,这正是上周奏效的方法)。
它只是弹出一个 403 错误 模态框,仅此而已。
我已确保这并非由组件或主题引起……但不确定是否是我无意中更改了某些设置?