设置跨源资源共享(CORS)

我在站点的 app.yml 文件的 env 部分添加了 DISCOURSE_ENABLE_CORS: "true"
然后我重建了应用程序。
然后我进入 cors_origins 部分,添加了我试图进行交互的站点的完整 URL,但它仍然不起作用。
我创建了一个页面,在主站点离线时提供信息。
我将这段 JavaScript 放在页面中,用于检查主站点,并在主站点恢复联机时重定向到它,但它似乎不起作用。
代码如下:

    <script>
        function checkSiteStatus() {
            fetch('https://discourse.technospider.com', {
                method: 'HEAD',
                mode: 'cors', // 使用 CORS 获取状态码
                cache: 'no-store' // 避免缓存
            })
            .then(response => {
                console.log('Site check: Status', response.status);
                if (response.ok) { // 200-299 状态码
                    console.log('Site is up, redirecting to Discourse');
                    window.location.replace('https://discourse.technospider.com');
                } else {
                    console.log('Site is still down (status: ' + response.status + '), retrying in 20 seconds');
                    setTimeout(checkSiteStatus, 20000);
                }
            })
            .catch(error => {
                console.log('Site check: Error (likely down or CORS issue):', error.message);
                setTimeout(checkSiteStatus, 20000);
            });
        }
            
        // 立即开始检查
        checkSiteStatus();
    </script>

这是控制台错误:

[Error] Origin https://www.technospider.com is not allowed by Access-Control-Allow-Origin. Status code: 200
[Error] Fetch API cannot load https://discourse.technospider.com/ due to access control checks.
[Error] Failed to load resource: Origin https://www.technospider.com is not allowed by Access-Control-Allow-Origin. Status code: 200 (discourse.technospider.com, line 0)
[Log] Site check: Error (likely down or CORS issue): – "Load failed" (berightback, line 78)

如果有人有什么见解,我很想知道。Grok 和我都束手无策。