CDNで静的ファイルをホスティングする
フロントエンドの静的リソース、例えば.jsや.cssファイルはweb/build/static/に位置しています。 これらのファイルをパブリッククラウドのCDNサービスでデプロイしたい場合、Casdoorはデプロイプロセスを簡素化するスクリプトを提供しています。 以下の手順に従ってください。
注
Casdoorのフロントエンドコードが既にビルドされていることを前提としています。 まだの場合は、ドキュメントを参照してください。
準備
まず、Casdoor UIで有効なストレージプロバイダーを作成する必要があります。 例を参照できます。
注意
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を通じて要求されます。