tanaka's Programming Memo

プログラミングについてのメモ。

【Godot4.x】HTML5でエクスポートしたアプリを自分のWebサーバーで動かす

Godot4でHTML5にエクスポートしたアプリをWebサーバーにアップロードしても、そのままではCross Origin IsolationとSharedArrayBufferの機能がないというエラーが出ます。

エラー

GodotのIssuesに情報がありました。

SharedArrayBuffer & Cross Origin Isolation For HTML5 Not Widely Implemented · Issue #69020 · godotengine/godot · GitHub

Cross-Origin-Opener-PolicyとCross-Origin-Embedder-Policyの設定が必要とのことでした。自分の使っているサーバーは.htaccessで設定ができるので、以下の内容を書いた.htaccessファイルを作成して、アプリをアップロードしたフォルダーにアップロードしたら動作しました。

Header add Cross-Origin-Opener-Policy: "same-origin"
Header add Cross-Origin-Embedder-Policy: "require-corp"

ちなみにnginx系の場合は、nginx.confファイルに以下のような設定と書いてありました。nginxで試してないのでsome-locationの書き方などは不明です。

location some-location {
  add_header "Cross-Origin-Opener-Policy" "same-origin";
  add_header "Cross-Origin-Embedder-Policy" "require-corp";     
}