Bạn có nhiều quyền kiểm soát hơn đối với Dynamic Links xây dựng thương hiệu bằng cách sử dụng
thay vì miền con page.link
. Với miền tuỳ chỉnh, bạn có thể tạo
Dynamic Links như các ví dụ sau:
https://example.com/link-suffix https://example.com/links/promos/link-suffix https://links.example.com/link-suffix https://ex.amp.le/link-suffix
Phần URL trước link-suffix được gọi là Tiền tố URL, và chứa cả miền Dynamic Link tuỳ chỉnh và tiền tố đường dẫn. Bạn sẽ cần cung cấp tiền tố URL khi bạn tạo Dynamic Links.
Để thiết lập miền tuỳ chỉnh, bạn cần có quyền của Người chỉnh sửa hoặc Chủ sở hữu trên Firebase dự án.
Sử dụng miền web của bạn cho Dynamic Links
Bạn có thể sử dụng cùng một miền cho Dynamic Links và các trang web của mình là Universal Đường liên kết và Đường liên kết ứng dụng, nhưng nếu có, bạn phải chú ý rằng các URL Dynamic Link của mình không xung đột với URL web của bạn. Khi bạn định cấu hình Dynamic Links để sử dụng một tiền tố URL cụ thể, thì tất cả URL bắt đầu bằng tiền tố đó đều được coi là Dynamic Links, nên bạn không thể sử dụng URL có tiền tố đó để trỏ đến các dịch vụ được lưu trữ thông thường nội dung.
Ví dụ: nếu bạn muốn tạo Dynamic Link cho tài nguyên
https://example.com/my-resource
(trang web, Đường liên kết phổ quát hoặc Đường liên kết ứng dụng), bạn
không thể sử dụng https://example.com/
làm tiền tố URL Dynamic Links vì làm như vậy
sẽ khiến https://example.com/my-resource
được coi là Dynamic Link.
Thay vào đó, bạn phải sử dụng một tiền tố URL với một miền khác hoặc một
tiền tố đường dẫn.
Vì vậy, Dynamic Links dạng dài sau đây (và các đường liên kết ngắn tương đương) sẽ không hoạt động như
vì các URL được chỉ định bởi tham số link
bắt đầu bằng
Tiền tố URL Dynamic Link, https://example.com/
:
https://example.com/?link=https://example.com/my-resource https://example.com/?link=https://example.com/resources/my-resource
Tuy nhiên, Dynamic Links dạng dài sau đây (và các đường liên kết ngắn tương đương) có thể mang lại hiệu quả,
vì các tiền tố URL không xung đột với các URL link
:
https://link.example.com/?link=https://example.com/my-resource https://example.com/links/?link=https://example.com/my-resource https://ex.amp.le/?link=https://example.com/my-resource
Thiết lập miền tuỳ chỉnh trong bảng điều khiển của Firebase
Thường thì bạn có thể thiết lập miền tuỳ chỉnh hoàn toàn trong bảng điều khiển Firebase. Người nhận làm như vậy:
Nếu bạn chưa thiết lập Firebase Hosting cho dự án của mình, hãy mở Trang Hosting của bảng điều khiển Firebase, nhấp vào Bắt đầu rồi nhấp vào hướng dẫn thiết lập. Bạn không phải hoàn tất các bước được nêu tại thời điểm này.
Mở trang Dynamic Links của bảng điều khiển Firebase.
Nếu bạn chưa từng sử dụng Dynamic Links, hãy nhấp vào Bắt đầu. Nếu không, hãy nhấp vào Thêm tiền tố URL trong trình đơn thả xuống.
Sau đó, hoàn tất trình hướng dẫn thiết lập, trong đó chỉ định tiền tố miền và đường dẫn mà bạn muốn muốn sử dụng khi được nhắc.
Chỉ dành cho iOS: Trong tệp
Info.plist
của dự án Xcode, hãy tạo một khoá có tênFirebaseDynamicLinksCustomDomains
rồi đặt thành URL Dynamic Links của ứng dụng tiền tố. Ví dụ:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/link</string> <string>https://example.com/promos</string> </array>
Thiết lập miền tuỳ chỉnh theo cách thủ công
Trong một số trường hợp, chẳng hạn như khi bạn đã thiết lập một miền tuỳ chỉnh cho Dynamic Links và muốn thêm một miền khác, hoặc khi bạn đã thêm một miền kết nối với một trang web Hosting, nên bạn phải thiết lập miền tuỳ chỉnh theo cách thủ công.
Cách thực hiện:
Kết nối miền của bạn với Firebase Hosting nếu bạn chưa làm như vậy.
Để thiết lập miền của bạn với Firebase Hosting, bạn cần tạo tệp cấu hình
firebase.json
trong thư mục dự án cục bộ của bạn.Cập nhật lên phiên bản mới nhất của Firebase CLI (Phiên bản 6.5.0 trở lên).
Định cấu hình trang web Hosting cho Dynamic Links trong dự án của bạn
firebase.json
. Nếu dự án của bạn có nhiều trang web, hãy nhớ định cấu hình trang web được kết nối với miền bạn muốn sử dụng.Thiết lập
appAssociation
thànhAUTO
. Với chế độ cài đặt này, Hosting tạoassetlinks.json
vàapple-app-site-association
một cách linh động khi được yêu cầu.Chỉ định các tiền tố đường dẫn mà bạn muốn sử dụng cho Dynamic Links bằng cách đặt ghi đè quy tắc có
dynamicLinks
được đặt thànhtrue
. Yêu cầu đối với các đường dẫn này sẽ nhận được được gửi qua proxy cho Dynamic Links.Không giống như các quy tắc ghi lại đường dẫn đến URL, quy tắc viết lại Dynamic Link không thể chứa biểu thức chính quy.
Nếu bạn có nhiều quy tắc ghi lại cho trang web, hãy lưu ý rằng Hosting thực thi quy tắc ghi lại đầu tiên phù hợp với yêu cầu.
Ví dụ:
"hosting": { // ... "appAssociation": "AUTO", "rewrites": [ { "source": "/promos/**", "dynamicLinks": true }, { "source": "/links/share/**", "dynamicLinks": true } ] }
Với cấu hình ở trên, bạn có thể tạo Dynamic Links với các tiền tố URL như các ví dụ sau:
https://your-domain/promos/link-suffix https://your-domain/links/share/link-suffix
Nếu chỉ sử dụng miền này cho Dynamic Links, bạn có thể sử dụng đường dẫn nguồn là
/**
để tạo Dynamic Links mà không có tiền tố đường dẫn:{ "source": "/**", "dynamicLinks": true }
Với quy tắc trên, bạn có thể tạo Dynamic Links như ví dụ sau:
https://your-domain/link-suffix
Triển khai các thay đổi về cấu hình Hosting:
firebase deploy --only hosting
(không bắt buộc) Bạn có thể kiểm tra nội dung
firebase.json
đã triển khai bằng Hosting API REST.Chỉ dành cho iOS: Trong tệp
Info.plist
của dự án Xcode, hãy tạo một khoá có tênFirebaseDynamicLinksCustomDomains
rồi đặt thành URL Dynamic Links của ứng dụng tiền tố. Ví dụ:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/promos</string> <string>https://example.com/links/share</string> </array>
Thứ tự ưu tiên cho Dynamic Links và Hosting
Đối với Dynamic Links, hãy đặc biệt lưu ý thứ tự ưu tiên lưu trữ.
- Đảm bảo rằng tiền tố URL Dynamic Links không xung đột với mức độ ưu tiên cao hơn cấu hình lưu trữ (ví dụ: nội dung tĩnh được lưu trữ luôn được ưu tiên thay vì viết lại).
- Trong thuộc tính
rewrites
, phản hồi Hosting sẽ tuân thủ quy tắc được chỉ định bởi cụm từsource
đầu tiên ghi lại đường dẫn được yêu cầu.
Ví dụ: nếu bạn thiết lập Dynamic Link cho
your-domain/source-path/link-suffix
nhưng bạn cũng có nội dung tĩnh tại
your-domain/source-path/index.html
,
nội dung tĩnh sẽ được ưu tiên. Người dùng cuối sẽ thấy index.html
thay vì
Dynamic Link. Tương tự, nếu bạn có nội dung tĩnh tại
your-domain/source-path/link-suffix
,
người dùng cuối sẽ thấy nội dung tĩnh thay vì Dynamic Link.
Nếu bạn muốn sử dụng cùng một thương hiệu cho cả Dynamic Links và Hosting, hãy cân nhắc một trong các lựa chọn sau cho tiền tố URL Dynamic Links:
Đặt thuộc tính
source
để khớp với một tiền tố đường dẫn. Ví dụ: nếu bạn có một miền tuỳ chỉnh củaexample.com
, thì quy tắc viết lại của bạn có thể là:// Domain is example.com "rewrites": [ { "source": "/links/**", // Dynamic Links start with "https://example.com/links/" "dynamicLinks": true } ]
Thiết lập một miền con để sử dụng cho Dynamic Links, sau đó đặt thuộc tính
source
thành khớp với miền con đó. Ví dụ: nếu bạn có miền con củalinks.example.com
, quy tắc viết lại của bạn có thể là:// Domain is links.example.com "rewrites": [ { "source": "/**", // Dynamic Links start with "https://links.example.com/" "dynamicLinks": true } ]