Pular para o conteúdo principal

Hospedagem de Arquivos Estáticos em um CDN

Recursos estáticos do frontend, como arquivos .js e .css, estão localizados em web/build/static/. Se você deseja implantar esses arquivos no serviço de CDN de uma nuvem pública, o Casdoor fornece um script que simplifica o processo de implantação. Por favor, siga os passos abaixo.

nota

Presumimos que você já construiu o código frontend do Casdoor. Se não o fez, por favor, consulte a documentação.

Preparação

Primeiro, você precisa criar um Provedor de Armazenamento válido na UI do Casdoor. Você pode se referir ao exemplo.

cuidado

Ao preencher o campo Domain, certifique-se de terminá-lo com uma '/'. storage_domian

Uso

O script pode ser encontrado em deployment/deploy_test.go.

Em deploy_test.go, você precisa modificar o parâmetro id em GetProvider(). O formato do id do provedor é <owner>/<name>.

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

Após fazer a modificação necessária, use os seguintes comandos para executar o script:

cd deployment
go test

Se a execução for bem-sucedida, você verá:

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

Como funciona

O script irá:

  • Faça o upload de todos os arquivos nas pastas css/ e js/ para o serviço de CDN especificado pelo provedor de armazenamento.
  • Substitua todas as URLs dos arquivos .css e .js em web/build/index.html pelas URLs hospedadas no CDN.

Você ainda precisa manter o arquivo index.html. Após os arquivos estáticos serem carregados para o CDN, index.html ainda será solicitado pelos usuários através do backend Go do Casdoor, e os arquivos estáticos no CDN serão solicitados através das URLs fornecidas em index.html.