Configure l'hébergement de site web statique et les règles de redirection pour un compartiment Object Storage Service (OSS).
Syntaxe
{
"Type": "ALIYUN::OSS::Website",
"Properties": {
"BucketName": String,
"WebsiteConfiguration": Map
}
}
Propriétés
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contrainte |
|
BucketName |
String |
Oui |
Non |
Nom du compartiment. |
Aucune. |
|
WebsiteConfiguration |
Map |
Non |
Non |
Configuration du site web. |
Syntaxe de WebsiteConfiguration
"WebsiteConfiguration": {
"IndexDocument": Map,
"RoutingRules": List,
"ErrorDocument": Map
}
Propriétés de WebsiteConfiguration
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contrainte |
|
ErrorDocument |
Map |
Non |
Non |
Propriétés de la page d'erreur par défaut. |
|
|
IndexDocument |
Map |
Non |
Non |
Propriétés de la page d'accueil par défaut. |
|
|
RoutingRules |
List |
Non |
Non |
Règles de redirection. Maximum : 20. |
Syntaxe d'IndexDocument
"IndexDocument": {
"Type": String,
"Suffix": String,
"SupportSubDir": String
}
Propriétés d'IndexDocument
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contrainte |
|
Suffix |
String |
Oui |
Non |
Page d'accueil par défaut. |
Lorsqu'elle est définie, OSS renvoie cette page pour les requêtes concernant des objets se terminant par une barre oblique (/). |
|
SupportSubDir |
String |
Non |
Non |
Indique s'il faut rediriger vers la page d'accueil par défaut dans le sous-répertoire. |
Valeurs valides :
|
|
Type |
String |
Non |
Non |
Action à effectuer lorsque la page d'accueil par défaut est définie, que le nom de l'objet accédé ne se termine pas par une barre oblique (/) et que l'objet n'existe pas. |
Prend effet uniquement lorsque SupportSubDir a la valeur true. Appliqué après RoutingRule et avant ErrorFile. Par exemple, si la page d'accueil par défaut est index.html et que vous accédez à bucket.oss-cn-hangzhou.aliyuncs.com/abc (où l'objet abc n'existe pas). Valeurs valides :
|
Syntaxe de RoutingRules
"RoutingRules": [
{
"Condition": Map,
"RuleNumber": Integer,
"Redirect": Map
}
]
Propriétés de RoutingRules
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contrainte |
|
Condition |
Map |
Oui |
Non |
Conditions de correspondance. |
La règle s'exécute uniquement lorsque toutes les conditions spécifiées sont remplies. Propriétés Condition. |
|
RuleNumber |
Integer |
Oui |
Non |
Numéro de séquence de la règle de redirection. OSS fait correspondre les règles par ordre croissant. |
En cas de correspondance, OSS exécute cette règle et ignore les règles suivantes. |
|
Redirect |
Map |
Oui |
Non |
Action à effectuer lorsque la règle correspond. |
Syntaxe de Condition
"Condition": {
"IncludeHeaders": List,
"KeyPrefixEquals": String,
"HttpErrorCodeReturnedEquals": String,
"KeySuffixEquals": String
}
Propriétés de Condition
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contrainte |
|
HttpErrorCodeReturnedEquals |
String |
Non |
Non |
Code d'état HTTP qui déclenche la règle. Lorsque RedirectType est Mirror, ce code doit être 404. |
Aucune. |
|
IncludeHeaders |
List |
Non |
Non |
En-têtes de requête à faire correspondre. La règle se déclenche uniquement lorsque la requête contient ces en-têtes et valeurs. |
Vous pouvez spécifier jusqu'à 10 en-têtes pour cette propriété. |
|
KeyPrefixEquals |
String |
Non |
Non |
Préfixe du nom d'objet à faire correspondre. |
Aucune. |
|
KeySuffixEquals |
String |
Non |
Non |
Suffixe du nom d'objet à faire correspondre. |
Aucune. |
Syntaxe d'IncludeHeaders
"IncludeHeaders": [
{
"Equals": String,
"Key": String
}
]
Propriétés d'IncludeHeaders
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contrainte |
|
Key |
String |
Oui |
Non |
Nom de l'en-tête. |
Aucune. |
|
Equals |
String |
Non |
Non |
Valeur de l'en-tête. |
Aucune. |
Syntaxe de Redirect
"Redirect": {
"MirrorURL": String,
"ReplaceKeyWith": String,
"MirrorHeaders": Map,
"HttpRedirectCode": String,
"EnableReplacePrefix": Boolean,
"PassQueryString": Boolean,
"MirrorFollowRedirect": Boolean,
"ReplaceKeyPrefixWith": String,
"RedirectType": String,
"MirrorPassQueryString": Boolean,
"MirrorCheckMd5": Boolean,
"Protocol": String,
"HostName": String
}
Propriétés de redirection
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
RedirectType |
String |
Yes |
No |
Le type de redirection. |
Valeurs valides :
|
|
EnableReplacePrefix |
Boolean |
No |
No |
Indique s'il faut remplacer le préfixe du nom de l'objet par la valeur de ReplaceKeyPrefixWith. Si cette valeur est vide ou nulle, le préfixe est tronqué. |
Remarque
Vous pouvez définir cette propriété sur true uniquement lorsque ReplaceKeyWith est défini sur null. Valeur par défaut : false. |
|
HttpRedirectCode |
String |
No |
No |
Le code de redirection HTTP dans la réponse. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur External ou AliCDN. Valeur par défaut : 302. Valeurs valides :
|
|
HostName |
String |
No |
No |
Le nom de domaine pour la redirection. |
Le nom de domaine doit être conforme aux conventions relatives aux noms de domaine. Par exemple, si le nom de l'objet que vous souhaitez accéder est test, Protocol est défini sur |
|
MirrorURL |
String |
No |
No |
L'URL d'origine pour la récupération par miroir vers l'origine. Prend effet uniquement lorsque RedirectType est Mirror. |
Doit commencer par http:// ou https:// et se terminer par une barre oblique (/). OSS ajoute le nom de l'objet pour générer l'URL de récupération vers l'origine. Par exemple, pour accéder à myobject : si MirrorURL est |
|
MirrorHeaders |
Map |
No |
No |
En-têtes renvoyés à l'origine lors de la récupération par miroir vers l'origine. |
Prend effet uniquement lorsque RedirectType est Mirror. |
|
MirrorFollowRedirect |
Boolean |
No |
No |
Indique s'il faut suivre l'en-tête Location si l'origine renvoie un code d'état 3xx. |
Prend effet uniquement lorsque RedirectType est Mirror. Valeurs valides :
|
|
MirrorPassQueryString |
Boolean |
No |
No |
Identique à PassQueryString, mais avec une priorité supérieure. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur Mirror. Valeur par défaut : false. |
|
MirrorCheckMd5 |
Boolean |
No |
No |
Indique s'il faut vérifier le hachage MD5 du corps de la réponse provenant de l'origine. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur Mirror. Lorsque cette option est définie sur true et que la réponse de l'origine inclut l'en-tête Content-Md5, OSS vérifie que le MD5 des données correspond. Dans le cas contraire, OSS ne stocke pas les données. Valeur par défaut : false. |
|
PassQueryString |
Boolean |
No |
No |
Indique s'il faut inclure les paramètres de la requête d'origine dans la requête de redirection ou de récupération vers l'origine. |
Par exemple, si PassQueryString est true et que la requête contient a=b&c=d : pour une redirection 302, les paramètres sont ajoutés à l'en-tête Location (par exemple, Valeur par défaut : false. Valeurs valides : true et false. |
|
Protocol |
String |
No |
No |
Le protocole de redirection. |
Prend effet lorsque RedirectType est External ou AliCDN. Par exemple, si l'objet est test et que HostName est Valeurs valides : http, https. |
|
ReplaceKeyWith |
String |
No |
No |
La valeur utilisée pour remplacer le nom de l'objet lors de la redirection. |
Vous pouvez spécifier une variable pour ReplaceKeyWith. La variable ${key} est prise en charge. Par exemple, le nom de l'objet auquel vous souhaitez accéder est test. Si ReplaceKeyWith est défini sur prefix/{key}, le préfixe du nom de l'objet spécifié par prefix/ est également inclus dans l'adresse de l'objet dans le scénario d'accès réel. Dans cet exemple, l'adresse de l'objet spécifiée par l'en-tête Location est |
|
ReplaceKeyPrefixWith |
String |
No |
No |
La valeur utilisée pour remplacer le préfixe du nom de l'objet lors de la redirection. |
Par exemple, si KeyPrefixEquals est défini sur ABC/ et ReplaceKeyPrefixWith sur def/ lorsque vous accédez à un objet nommé ABC/test.txt, OSS remplace ABC par def. Le chemin d'accès original de l'objet est ABC/test.txt. Après l'application de la règle de redirection, le chemin d'accès de l'objet devient def/test.txt. Dans cet exemple, vous êtes redirigé vers Reportez-vous à la documentation OSS pour plus de détails sur le comportement de redirection. |
Syntaxe de MirrorHeaders
"MirrorHeaders": {
"PassAll": Boolean,
"Pass": List,
"Sets": List,
"Remove": List
}
Propriétés de MirrorHeaders
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
PassAll |
Boolean |
No |
No |
Indique s'il faut transmettre les en-têtes de requête (à l'exception de ceux exclus) à l'origine. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur Mirror. Les en-têtes suivants sont exclus :
Valeur par défaut : false. |
|
Pass |
List |
No |
No |
Les en-têtes que vous souhaitez transmettre à l'origine. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur Mirror. Chaque en-tête peut avoir une longueur maximale de 1 024 octets et ne peut contenir que des chiffres, des lettres et des tirets demi-cadratins (‒). Vous pouvez spécifier jusqu'à 10 en-têtes pour cette propriété. |
|
Remove |
List |
No |
No |
Les en-têtes que vous ne souhaitez pas transmettre à l'origine. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur Mirror. Chaque en-tête peut avoir une longueur maximale de 1 024 octets et peut contenir des chiffres, des lettres et des tirets demi-cadratins (‒). Vous pouvez spécifier jusqu'à 10 en-têtes pour cette propriété. |
|
Sets |
List |
No |
No |
En-têtes envoyés à l'origine, qu'ils soient présents ou non dans la requête d'origine. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur Mirror. Vous pouvez spécifier jusqu'à 10 en-têtes. |
Syntaxe de Sets
"Sets": [
{
"Value": String,
"Key": String
}
]
Propriétés de Sets
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
Key |
String |
Yes |
No |
La clé de l'en-tête. La clé de l'en-tête peut avoir une longueur maximale de 1 024 octets. Le jeu de caractères de cette propriété est identique à celui de Pass. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur Mirror. |
|
Value |
String |
Yes |
No |
La valeur de l'en-tête. La valeur de l'en-tête peut avoir une longueur maximale de 1 024 octets et ne peut pas contenir \r\n. |
Cette propriété prend effet uniquement lorsque RedirectType est défini sur Mirror. |
Syntaxe d'ErrorDocument
"ErrorDocument": {
"HttpStatus": String,
"Key": String
}
Propriétés ErrorDocument
|
Propriété |
Type |
Obligatoire |
Modifiable |
Description |
Contrainte |
|
Key |
String |
Oui |
Non |
La page d'erreur par défaut. |
Renvoie cette page lorsque l'objet demandé n'existe pas. |
|
HttpStatus |
String |
Non |
Non |
Le code de statut HTTP renvoyé avec la page d'erreur. |
Valeurs valides :
|
Valeurs de retour
Fn::GetAtt
Aucune.