Après tous les travaux difficiles de migration, etc. Sachez simplement que si vous devez servir le contenu en utilisant CNAME (par exemple, media.abc.com). Le nom du bucket doit commencer par media.abc.com/S3/amazon.com pour s'assurer qu'il fonctionne parfaitement.
Sachez simplement que S3 n'autorise pas le changement de nom direct depuis la console.
Existe-t-il des moyens de contourner ce problème?
amazon-web-services
amazon-s3
cname
Carson Lee
la source
la source
Solution
Explication
Il n'y a pas de fonctionnalité de renommage de compartiment pour S3 car il n'y a techniquement aucun dossier dans S3, nous devons donc gérer chaque fichier dans le compartiment.
Le code ci-dessus 1. créera un nouveau compartiment, 2. copiera les fichiers et 3. supprimera l'ancien compartiment. C'est tout.
Si vous avez beaucoup de fichiers dans votre compartiment et que vous vous inquiétez des coûts, lisez la suite. Dans les coulisses, tous les fichiers du bucket sont d'abord copiés puis supprimés. Cela devrait coûter un montant insignifiant si vous avez quelques milliers de fichiers. Sinon, vérifiez cette réponse pour voir comment cela vous affecterait.
Exemple
Dans l'exemple suivant, nous créons et remplissons l'ancien bucket, puis synchronisons les fichiers avec le nouveau. Vérifiez la sortie des commandes pour voir ce que fait AWS.
la source
--acl bucket-owner-full-control
(comme dans cette réponse )aws --region ap-southeast-2 s3 mb s3://new-bucket
Une version ultérieure de la boîte à outils AWS CLI a probablement fourni l'
mv
option.Je renomme les buckets à l'aide de la commande suivante:
la source
new-bucket
doit être créé avant d'exécuter la commande. De plus, leold-bucket
sera alors vide mais PAS supprimé. Si vous souhaitez le supprimer après le transfert de tous les fichiers, utilisez la commande suivante (sans les crochets angulaires):aws s3api delete-bucket --bucket <old-bucket> --region <region id>
aws s3 mv
effectivement copie et supprime, donc les coûts financiers devraient être les mêmes (je pense).