メインコンテンツにスキップ

CDNで静的ファイルをホスティングする

フロントエンドの静的リソース、例えば.jsや.cssファイルはweb/build/static/に位置しています。 これらのファイルをパブリッククラウドのCDNサービスでデプロイしたい場合、Casdoorはデプロイプロセスを簡素化するスクリプトを提供しています。 以下の手順に従ってください。

Casdoorのフロントエンドコードが既にビルドされていることを前提としています。 まだの場合は、ドキュメントを参照してください。

準備

まず、Casdoor UIで有効なストレージプロバイダーを作成する必要があります。 を参照できます。

注意

Domainフィールドを入力する際には、必ず'/'で終わるようにしてください。 storage_domain

使用法

スクリプトはdeployment/deploy_test.goで見つけることができます。

deploy_test.goでは、GetProvider()idパラメータを変更する必要があります。 プロバイダーidの形式は<owner>/<name>です。

func TestDeployStaticFiles(t *testing.T) {
provider := object.GetProvider("admin/provider_storage_aliyun_oss")
deployStaticFiles(provider)
}

必要な変更を行った後、以下のコマンドを使用してスクリプトを実行します:

cd deployment
go test

実行が成功すると、以下のように表示されます:

PASS
ok github.com/casdoor/casdoor/deployment 2.951s

仕組み

スクリプトは以下を行います:

  • css/およびjs/フォルダ内のすべてのファイルをストレージプロバイダーによって指定されたCDNサービスにアップロードします。
  • web/build/index.html内の.cssおよび.jsファイルのURLをCDNでホストされているURLに置き換えます。

index.htmlファイルは引き続き保持する必要があります。 静的ファイルがCDNにアップロードされた後、index.htmlは依然としてCasdoorのGoバックエンドを通じてユーザーによって要求され、CDN内の静的ファイルはindex.htmlに提供されたURLを通じて要求されます。