REST Resource: projects.sites.customDomains

Resource: CustomDomain

CustomDomain adalah entity yang menautkan nama domain ke situs Firebase Hosting. Tambahkan CustomDomain ke situs Anda untuk mengizinkan Hosting menayangkan konten situs sebagai respons atas permintaan terhadap nama domain Anda.

Representasi JSON
{
  "name": string,
  "annotations": {
    string: string,
    ...
  },
  "createTime": string,
  "updateTime": string,
  "deleteTime": string,
  "expireTime": string,
  "etag": string,
  "hostState": enum (HostState),
  "ownershipState": enum (OwnershipState),
  "requiredDnsUpdates": {
    object (DnsUpdates)
  },
  "issues": [
    {
      object (Status)
    }
  ],
  "certPreference": enum (Type),
  "cert": {
    object (Certificate)
  },
  "redirectTarget": string,
  "reconciling": boolean,
  "labels": {
    string: string,
    ...
  }
}
Kolom
name

string

Hanya output. Nama CustomDomain yang sepenuhnya memenuhi syarat.

annotations

map (key: string, value: string)

Anotasi yang dapat Anda tambahkan untuk meninggalkan metadata yang dapat dibaca manusia dan mesin tentang CustomDomain Anda.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

string (Timestamp format)

Hanya output. Waktu pembuatan domain kustom.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Hanya output. Terakhir kali CustomDomain diperbarui.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

deleteTime

string (Timestamp format)

Hanya output. Waktu CustomDomain dihapus; null untuk domain kustom yang belum dihapus. Domain kustom yang dihapus akan tetap ada selama sekitar 30 hari, dan setelah itu Hosting akan menghapusnya sepenuhnya. Untuk memulihkan domain kustom yang telah dihapus, buat permintaan customDomains.undelete.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

expireTime

string (Timestamp format)

Hanya output. Waktu minimum sebelum CustomDomain yang dihapus untuk sementara akan dihapus sepenuhnya dari Hosting; null untuk domain kustom yang belum dihapus.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

etag

string

Hanya output. String yang mewakili status CustomDomain saat ini dan memungkinkan Anda mengonfirmasi status awalnya dalam permintaan yang akan mengubahnya. Gunakan tag untuk memastikan konsistensi saat membuat permintaan customDomains.patch, customDomains.delete, dan customDomains.undelete.

hostState

enum (HostState)

Hanya output. HostState dari nama domain yang dirujuk CustomDomain ini.

ownershipState

enum (OwnershipState)

Hanya output. OwnershipState dari nama domain yang dirujuk CustomDomain ini.

requiredDnsUpdates

object (DnsUpdates)

Hanya output. Serangkaian pembaruan yang harus Anda lakukan pada data DNS nama domain agar Hosting dapat menayangkan konten yang aman atas namanya.

issues[]

object (Status)

Hanya output. Serangkaian error yang ditemukan sistem Hosting saat mencoba membangun kemampuan Hosting untuk menayangkan konten yang aman untuk nama domain Anda. Selesaikan masalah ini untuk memastikan CustomDomain berperilaku dengan benar.

certPreference

enum (Type)

Kolom yang memungkinkan Anda menentukan jenis sertifikat SSL yang dibuat oleh Hosting untuk nama domain Anda. Domain kustom paket Spark hanya memiliki akses ke jenis sertifikat GROUPED, sedangkan domain paket Blaze dapat memilih opsi apa pun.

cert

object (Certificate)

Hanya output. Sertifikat SSL yang dimiliki Hosting untuk nama domain domain kustom ini. Untuk domain kustom baru, hal ini sering kali merepresentasikan maksud Hosting untuk membuat sertifikat, bukan sertifikat yang sebenarnya. Lihat kolom state untuk mengetahui informasi selengkapnya.

redirectTarget

string

Nama domain yang harus dituju CustomDomain ini untuk traffic. Jika ditentukan, Hosting akan merespons permintaan terhadap domain kustom ini dengan kode HTTP 301, dan merutekan traffic ke redirectTarget yang ditentukan.

reconciling

boolean

Hanya output. Kolom yang, jika benar, menunjukkan bahwa sistem Hosting berupaya membuat status domain kustom sesuai dengan status pilihan Anda. Hal ini paling sering terjadi saat true pertama kali menyediakan CustomDomain setelah permintaan customDomains.create atau saat membuat sertifikat SSL baru agar cocok dengan certPreference yang diperbarui setelah permintaan customDomains.patch.

labels

map (key: string, value: string)

Label yang digunakan untuk metadata dan/atau pemfilteran tambahan.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

HostState

Status host nama domain Anda. Status host ditentukan dengan memeriksa setiap alamat IP yang terkait dengan nama domain Anda untuk melihat apakah situs tersebut menayangkan konten Hosting.

Enum
HOST_STATE_UNSPECIFIED Status host domain kustom Anda tidak ditentukan. Pesan tidak valid jika tidak ditentukan.
HOST_UNHOSTED Nama domain domain kustom Anda tidak terkait dengan alamat IP mana pun.
HOST_UNREACHABLE Nama domain kustom Anda tidak dapat dijangkau. Layanan hosting Kueri DNS untuk menemukan alamat IP nama domain Anda menghasilkan error. Lihat kolom issues objek CustomDomain Anda untuk detail selengkapnya.
HOST_MISMATCH Nama domain domain kustom Anda memiliki alamat IP yang akhirnya tidak ditetapkan ke Hosting.
HOST_CONFLICT Nama domain domain kustom Anda memiliki alamat IP yang ditetapkan ke Hosting dan layanan lainnya. Untuk memastikan hasil yang konsisten, hapus data A dan AAAA yang terkait dengan layanan non-Hosting.
HOST_ACTIVE Semua permintaan terhadap nama domain kustom Anda dilayani oleh Hosting. Jika OwnershipState domain kustom juga ACTIVE, Hosting menayangkan konten situs Hosting Anda di nama domain.

Status Kepemilikan

Status kepemilikan domain Anda. Domain dapat dimiliki oleh maksimal satu Situs Firebase Hosting. Kepemilikan dapat ditentukan dengan dua cara:

* TXT records: A TXT record on the domain in the form
`hosting-site=[siteId]`.
* CNAME records: A CNAME record that points to a Hosting site's default
domain.

Jika CustomDomain Anda berada di OwnershipState selain OWNERSHIP_ACTIVE selama lebih dari 30 hari dan belum diupdate setidaknya selama 30 hari, sistem kepemilikan Hosting akan menghapus CustomDomain. Untuk memulihkan CustomDomain yang dihapus, buat permintaan customDomains.undelete.

Enum
OWNERSHIP_STATE_UNSPECIFIED Status kepemilikan domain kustom Anda tidak ditentukan. Hal ini tidak boleh terjadi.
OWNERSHIP_MISSING Nama domain domain kustom Anda tidak memiliki data kepemilikan terkait Hosting; tidak ada project Firebase yang memiliki izin untuk bertindak atas nama domain.
OWNERSHIP_UNREACHABLE Nama domain kustom Anda tidak dapat dijangkau. Layanan hosting Kueri DNS untuk menemukan data kepemilikan nama domain Anda menghasilkan error. Lihat kolom issues objek CustomDomain Anda untuk detail selengkapnya.
OWNERSHIP_MISMATCH Nama domain domain kustom Anda dimiliki oleh project Firebase lain. Hapus data TXT yang bertentangan dan ganti dengan data khusus project untuk project Firebase Anda saat ini.
OWNERSHIP_CONFLICT Nama domain domain kustom Anda memiliki data TXT yang bertentangan, yang menunjukkan kepemilikan oleh project Firebase Anda saat ini dan project lain. Hapus catatan kepemilikan project lain untuk memberikan kepemilikan project saat ini.
OWNERSHIP_PENDING Data DNS domain kustom Anda dikonfigurasi dengan benar. Hosting akan mentransfer kepemilikan domain Anda ke CustomDomain ini dalam waktu 24 jam.
OWNERSHIP_ACTIVE Nama domain domain kustom Anda memiliki TXT data yang memberikan izin kepada project-nya untuk bertindak atas nama domain tersebut.

UpdateDns

Kumpulan pembaruan data DNS yang harus Anda lakukan agar Hosting dapat menayangkan konten aman sebagai respons atas permintaan terhadap nama domain Anda. Update ini menampilkan status data DNS nama domain saat ini saat Hosting terakhir kali mengkuerinya, dan kumpulan data yang diinginkan yang perlu dilihat Hosting sebelum domain kustom Anda dapat aktif sepenuhnya.

Representasi JSON
{
  "discovered": [
    {
      object (DnsRecordSet)
    }
  ],
  "desired": [
    {
      object (DnsRecordSet)
    }
  ],
  "checkTime": string
}
Kolom
discovered[]

object (DnsRecordSet)

Kumpulan data DNS yang ditemukan Hosting saat memeriksa domain.

desired[]

object (DnsRecordSet)

Kumpulan data DNS ini harus melayani konten yang aman di domain untuk ditayangkan.

checkTime

string (Timestamp format)

Terakhir kali Hosting memeriksa data DNS domain kustom Anda.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

DnsRecordSet

Kumpulan data DNS yang relevan dengan penyiapan dan pemeliharaan domain kustom di Firebase Hosting.

Representasi JSON
{
  "domainName": string,
  "checkError": {
    object (Status)
  },
  "records": [
    {
      object (DnsRecord)
    }
  ]
}
Kolom
domainName

string

Hanya output. Nama domain yang terkait dengan kumpulan data.

checkError

object (Status)

Hanya output. Terjadi error pada layanan Hosting saat membuat kueri data DNS nama domain Anda. Catatan: Hosting mengabaikan error NXDOMAIN, karena error tersebut umumnya hanya berarti bahwa nama domain belum disiapkan.

records[]

object (DnsRecord)

Hanya output. Kumpulan data di domain.

{i>DnsRecord<i}

Data DNS adalah data resource yang menentukan perilaku sistem dan layanan saat menangani permintaan untuk nama domain. Misalnya, saat menambahkan data A ke data DNS nama domain, Anda memberi tahu sistem lain (seperti browser web pengguna) untuk menghubungi alamat IPv4 tersebut guna mengambil resource yang relevan dengan nama domain Anda (seperti file situs Hosting).

Representasi JSON
{
  "domainName": string,
  "type": enum (Type),
  "rdata": string,
  "requiredAction": enum (Action)
}
Kolom
domainName

string

Hanya output. Nama domain yang terkait dengan data, mis. foo.bar.com..

type

enum (Type)

Hanya output. Jenis kumpulan data, yang menentukan data apa saja yang terdapat dalam kumpulan data.

rdata

string

Hanya output. Data kumpulan data. Arti nilai bergantung pada jenis data: - A dan AAAA: Alamat IP untuk nama domain. - CNAME: Domain lain untuk memeriksa data. - TXT: String teks arbitrer yang terkait dengan nama domain. Hosting menggunakan data TXT untuk menentukan project Firebase yang memiliki izin untuk bertindak atas nama domain. - CAA: Flag, tag, dan nilai data, mis. 0 issue "pki.goog".

requiredAction

enum (Action)

Hanya output. Enum yang menunjukkan tindakan yang diperlukan untuk kumpulan data ini.

Jenis

Jenis data DNS, termasuk A, TXT, AAAA, dan CAA.

Enum
TYPE_UNSPECIFIED Jenis kumpulan data tidak ditentukan. Pesan tidak valid jika tidak ditentukan.
A Data A, seperti yang ditentukan dalam RFC 1035. {i>Record<i} A menentukan alamat IPv4 mana yang diarahkan oleh nama domain untuk lalu lintas data.
CNAME Data CNAME, seperti yang ditentukan dalam RFC 1035. Data CNAME atau Nama Kanonis memetakan nama domain ke nama domain kanonis yang berbeda. Jika ada data CNAME, data tersebut harus menjadi satu-satunya data di nama domain.
TXT Data TXT, seperti yang ditentukan dalam RFC 1035. Data TXT menyimpan data teks arbitrer pada nama domain. Hosting menggunakan data TXT untuk menetapkan Project Firebase yang memiliki izin untuk melakukan tindakan pada nama domain.
AAAA Data AAAA, seperti yang ditentukan dalam data AAAA RFC 3596 menentukan alamat IPv6 mana yang menjadi tujuan traffic dari nama domain.
CAA

Data CAA, seperti yang didefinisikan dalam RFC 6844. CAA, atau Certificate Authority Authorization, catatan menentukan Certificate Authority (organisasi pembuatan sertifikat SSL) mana yang berwenang untuk membuat sertifikat bagi nama domain. Firebase Hosting menggunakan pki.goog sebagai CA utamanya.

Data CAA bersifat menurun. Data CAA di foo.com juga berlaku untuk bar.foo.com kecuali jika bar.foo.com memiliki kumpulan data CAA sendiri.

Data CAA bersifat opsional. Jika nama domain dan induknya tidak memiliki data CAA, semua CA diberi otorisasi untuk membuat sertifikat atas namanya. Secara umum, Hosting hanya meminta Anda untuk mengubah data CAA jika permintaan tersebut diperlukan untuk membatalkan pemblokiran pembuatan sertifikat SSL.

Tindakan

Action adalah jenis tindakan yang harus Anda lakukan pada data DNS ini untuk mengonfigurasi domain Anda agar dapat digunakan dengan Firebase Hosting.

Enum
NONE Anda tidak perlu melakukan tindakan apa pun.
ADD Tambahkan data ini ke data DNS Anda.
REMOVE Hapus data ini dari data DNS Anda.

Jenis

Jenis sertifikat. Menentukan cara sistem Hosting menangani pembuatan dan pemeliharaan sertifikat.

Enum
TYPE_UNSPECIFIED Jenis sertifikat tidak ditentukan. Pesan tidak valid jika tidak ditentukan.
TEMPORARY Jenis sertifikat berumur singkat yang mencakup nama domain untuk sementara, sedangkan Hosting membuat sertifikat yang lebih permanen.
GROUPED Sertifikat standar untuk domain kustom paket Spark.
PROJECT_GROUPED Khusus paket Blaze. Sertifikat yang mencakup 1 hingga 100 nama domain dengan domain kustom di project Firebase yang sama.
DEDICATED Khusus paket Blaze. Sertifikat yang mencakup satu nama domain.

Sertifikat

Sertifikat SSL yang digunakan untuk menyediakan enkripsi end-to-end untuk permintaan terhadap nama domain Anda. Certificate dapat berupa sertifikat SSL yang sebenarnya atau, untuk domain kustom yang baru dibuat, intent Hosting untuk membuatnya.

Representasi JSON
{
  "type": enum (Type),
  "state": enum (CertState),
  "verification": {
    object (CertVerification)
  },
  "issues": [
    {
      object (Status)
    }
  ],
  "createTime": string,
  "expireTime": string
}
Kolom
type

enum (Type)

Hanya output. Jenis sertifikat.

state

enum (CertState)

Hanya output. Status sertifikat. Hanya status CERT_ACTIVE dan CERT_EXPIRING_SOON yang menyediakan cakupan SSL untuk nama domain. Jika statusnya adalah PROPAGATING dan Hosting memiliki sertifikat aktif untuk nama domain sebelumnya, sertifikat yang sebelumnya aktif tersebut akan menyediakan cakupan SSL untuk nama domain hingga sertifikat saat ini disebarkan.

verification

object (CertVerification)

Hanya output. Serangkaian tantangan ACME yang dapat Anda tambahkan ke data DNS atau penyedia hosting non-Hosting yang sudah ada untuk mengizinkan Hosting membuat sertifikat SSL untuk nama domain Anda sebelum mengarahkan traffic ke hosting. Anda dapat menggunakan tantangan ini sebagai bagian dari transisi tanpa periode nonaktif dari penyedia lama ke Hosting.

issues[]

object (Status)

Hanya output. Serangkaian error yang ditemukan oleh Hosting saat mencoba membuat sertifikat untuk nama domain Anda. Atasi masalah ini untuk memastikan Hosting dapat menyediakan komunikasi yang aman dengan pengunjung situs Anda.

createTime

string (Timestamp format)

Hanya output. Waktu pembuatan sertifikat. Untuk sertifikat TEMPORARY, ini adalah kali pertama Hosting membuat tantangan untuk nama domain Anda. Untuk semua jenis sertifikat lainnya, ini adalah waktu saat sertifikat sebenarnya dibuat.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

expireTime

string (Timestamp format)

Hanya output. Waktu habis masa berlaku sertifikat. Setelah itu, sertifikat tidak dapat digunakan lagi untuk memberikan komunikasi yang aman antara Hosting dan pengunjung situs Anda.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

Sertifikasi

Status sertifikat SSL yang dimiliki Hosting untuk nama domain Anda. Ini bisa menunjukkan status sertifikat sebenarnya atau, untuk domain kustom baru, upaya Hosting untuk membuat sertifikat.

Enum
CERT_STATE_UNSPECIFIED Status sertifikat tidak ditentukan. Pesan tidak valid jika tidak ditentukan.
CERT_PREPARING Status awal setiap sertifikat, mewakili maksud Hosting untuk membuat sertifikat, sebelum permintaan ke Certificate Authority dibuat.
CERT_VALIDATING Hosting memvalidasi apakah data DNS nama domain berada dalam status yang mengizinkan pembuatan sertifikat atas namanya.
CERT_PROPAGATING Sertifikat baru saja dibuat, dan memerlukan waktu untuk diterapkan di CDN Hosting.
CERT_ACTIVE Sertifikat aktif, menyediakan koneksi aman untuk nama domain yang diwakilinya.
CERT_EXPIRING_SOON Masa berlaku sertifikat akan berakhir, semua nama domain di dalamnya akan diberi sertifikat baru.
CERT_EXPIRED Sertifikat sudah tidak berlaku. Hosting tidak dapat lagi menayangkan konten aman pada nama domain Anda.

Verifikasi Verifikasi

Serangkaian tantangan ACME yang dapat Anda gunakan untuk mengizinkan Hosting membuat sertifikat SSL untuk nama domain Anda sebelum mengarahkan traffic ke server Hosting. Menggunakan tantangan DNS atau HTTP; Anda tidak perlu memberikan keduanya.

Representasi JSON
{
  "dns": {
    object (DnsUpdates)
  },
  "http": {
    object (HttpUpdate)
  }
}
Kolom
dns

object (DnsUpdates)

Hanya output. Data TXT yang akan ditambahkan ke data DNS yang mengonfirmasi intent Anda untuk mengizinkan Hosting membuat sertifikat SSL untuk nama domain Anda.

http

object (HttpUpdate)

Hanya output. File yang akan ditambahkan ke layanan hosting non-Hosting yang sudah ada, yang mengonfirmasi niat Anda untuk mengizinkan Hosting membuat sertifikat SSL untuk nama domain Anda.

HTTPUpdate

File yang dapat Anda tambahkan ke layanan hosting non-Hosting yang sudah ada, yang mengonfirmasi niat Anda untuk mengizinkan Certificate Authority Hosting membuat sertifikat SSL untuk domain Anda.

Representasi JSON
{
  "path": string,
  "desired": string,
  "discovered": string,
  "lastCheckTime": string,
  "checkError": {
    object (Status)
  }
}
Kolom
path

string

Hanya output. Jalur ke file.

desired

string

Hanya output. String teks yang akan ditayangkan di jalur.

discovered

string

Hanya output. Apakah Hosting dapat menemukan konten file yang diperlukan di jalur yang ditentukan selama pemeriksaan terakhirnya.

lastCheckTime

string (Timestamp format)

Hanya output. Terakhir kali sistem Hosting memeriksa konten file.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

checkError

object (Status)

Hanya output. Terjadi error saat pemeriksaan konten terakhir. Jika null, pemeriksaan berhasil diselesaikan.

Metode

create

Membuat CustomDomain.

delete

Menghapus CustomDomain yang ditentukan.

get

Mendapatkan CustomDomain yang ditentukan.

list

Menampilkan setiap CustomDomain yang terkait dengan situs Hosting induk yang ditentukan.

patch

Mengupdate CustomDomain yang ditentukan.

undelete

Membatalkan penghapusan CustomDomain yang ditentukan jika telah dihapus untuk sementara.