การโฮสต์ไฟล์สถิติใน CDN
ไฟล์ทรัพยากรสถิติของ frontend เช่นไฟล์ .js และ .css ตั้งอยู่ใน web/build/static/
หากคุณต้องการปรับใช้ไฟล์เหล่านี้ในบริการ CDN ของคลาวด์สาธารณะ Casdoor มีสคริปต์ที่ทำให้กระบวนการปรับใช้ง่ายขึ้น กรุณาทำตามขั้นตอนด้านล่าง
เราสมมติว่าคุณได้สร้างโค้ด frontend ของ Casdoor เรียบร้อยแล้ว หากคุณยังไม่ได้ทำ กรุณาดูที่ เอกสาร
การเตรียมการ
ขั้นแรก คุณต้องสร้าง Storage Provider ที่ถูกต้องใน UI ของ Casdoor คุณสามารถดูตัวอย่างได้ที่ ตัวอย่าง
เมื่อกรอกข้อมูลในช่อง Domain
ต้องแน่ใจว่าจบด้วย '/'
การใช้งาน
สคริปต์สามารถพบได้ที่ deployment/deploy_test.go
ใน deploy_test.go, คุณต้องแก้ไขพารามิเตอร์ id
ใน GetProvider()
รูปแบบของ provider 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 ที่ระบุโดย storage provider - แทนที่ URL ทั้งหมดของไฟล์
.css
และ.js
ในweb/build/index.html
ด้วย URL ที่โฮสต์ใน CDN
คุณยังต้องเก็บไฟล์ index.html
หลังจากไฟล์สถิติถูกอัปโหลดไปยัง CDN แล้ว index.html
จะยังคงถูกขอโดยผู้ใช้ผ่าน backend ของ Casdoor ที่เขียนด้วย Go และไฟล์สถิติใน CDN จะถูกขอผ่าน URL ที่ให้ไว้ใน index.html