Google Cloud Storage から React アプリを提供しようとしています。React プロジェクトをビルドし、build/
ディレクトリの内容を Google Cloud Storage にアップロードしました。内部のすべてのファイルが公開されていることを確認しました。ただし、Google Cloud バケット リンクhttp://storage.googleapis.com/BUCKET_NAME/に移動すると、パーミッション エラーに関する XML が表示されます。
<Error>
<Code>AccessDenied</Code>
<Message>Access denied.</Message>
<Details>
Anonymous users does not have storage.objects.list access to bucket BUCKET_NAME.
</Details>
</Error>
次に、URL http://storage.googleapis.com/BUCKET_NAME/index.htmlに移動しようとしましたが、空白のページが表示されました。JS コンソールにエラーがあります。
index.html:1 GET http://storage.googleapis.com/static/css/main.9a0fe4f1.css
index.html:1 GET http://storage.googleapis.com/static/js/main.871fec8f.js
これらのエラーは、取得した URL に BUCKET_NAME が含まれていないように見えます。ただし、作成した index.html は、次のようにそれらを相対的に参照しています。
<script type="text/javascript" src="/static/js/main.871fec8f.js"></script>
何が起こっているのかわかりませんが、2つの問題があります。まず、index.html は、バケットの URL に移動するときにデフォルトで提供されるページではないということです。2 番目の問題は、相対パスが正しい URL を解決していないように見えることです。どんな助けでも大歓迎です。
これは私の側の問題でした。この方法は機能するはずです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加