NallDev
(NallDev)
1
こんにちは、
昨日 Discourse インスタンスをインストールしましたが、今日になると画面が真っ暗になり、コンソールに以下が表示されます。
スクリプト 'https://ajax.cloudflare.com/cdn-cgi/scripts/95c75768/cloudflare-static/rocket-loader.min.js' の読み込みが拒否されました。これは、以下のコンテンツセキュリティポリシーディレクティブに違反しているためです: "script-src 'unsafe-eval' 'report-sample' [url]/logs/ [url]/sidekiq/ [url]/mini-profiler-resources/ [url]/assets/ [url]/brotli_asset/ [url]/extra-locales/ [url]/highlight-js/ [url]/javascripts/ [url]/plugins/ [url]/theme-javascripts/ [url]/svg-sprite/"。'script-src-elem' が明示的に設定されていないため、フォールバックとして 'script-src' が使用されています。
スクリプトの取得時に悪い HTTP レスポンスコード (404) が返されました。
これをどうすれば修正できますか?
Cloudflare のコントロールパネルで、お使いのサイトの Cloudflare を無効にしてください。特に Rocket Loader 機能は Discourse と 完全に 互換性がありません。
mreach
(M. Reacher)
3
なぜこれが「完全に」互換性がないのか、詳しく教えていただけますか?私は他のカスタマイズと最適化が施された Rails アプリでもこれを成功裏に使用しています(通常は少しデバッグが必要です)。Discourse が CloudFlare のサービススイート全体と機能するように再設計されていない理由が気になります。Discourse は非常に広く使われているからです。
CloudFlareに聞いてください。コードは彼らのもので、 ours ではありません。
Stephen
(Stephen)
6
ここには実際にはメリットやインセンティブはありません。
Cloudflare が CDCK の開発者よりも Discourse のコードを最適化できるとお考えのようですが、その根拠は何でしょうか?
Cloudflare はキャッシュとしては問題ありませんが、すべてのパフォーマンス機能を無効にしないと、インストールは完全にサポート対象外となります。
mreach
(M. Reacher)
7
ここでのいくつかの議論から、意味のあるファーストペイントが十分な速さで表示されないという問題が、さまざまなテストで確認されているようです。この問題が実際に解決されるまでの間、Rocket Loader がそれをさらに軽減してくれるかもしれないと期待していました。
いいえ、それでは状況が悪化します。Discourse は JavaScript アプリケーションなので、初回読み込み時にはアプリがブラウザの JavaScript 実行環境にダウンロードされるため、少し時間がかかります。
技術的には機能するはずですが、もし動作しない場合は、Cloudflare が不適切なコードを書いたことが原因です。さらに詳しく調べたい場合は、Cloudflare にメールでご連絡ください。私たちは Cloudflare のコードを制御できません。なぜなら、私たちは Cloudflare ではないからです。
これで十分お分かりいただけたでしょうか。