webentwicklung-frage-antwort-db.com.de

Wie werden Kopfzeilen für alle Bilder in einem Bucket in Amazon S3 festgelegt?

Wir haben in Amazon S3 mehr als 10.000 Bilder in einem Bucket. Wie kann ich den Expires-Header für alle Bilder gleichzeitig festlegen?

24
Abhishek Jain

Kurz gesagt, ich habe mit der AWS CLI eine großartige Lösung gefunden:

aws s3 cp s3://bucketname/optional_path s3://bucketname/optional_path --recursive  --acl public-read  --metadata-directive REPLACE --cache-control max-age=2592000

Dadurch wird das Cache-Control für 30 Tage festgelegt. Beachten Sie, dass Sie die Option haben, die vorherigen Kopfdaten zu kopieren oder zu ersetzen. Da AWS automatisch die richtigen Meta-Inhaltstyp-Daten für jeden Medientyp enthält und ich einige schlechte Kopfzeilen hatte, habe ich mich entschieden, alles zu überschreiben. 

42
Mauvis Ledford

Sie können Massenänderungen an Bucket-Dateien mit Apps von Drittanbietern vornehmen, die die S3-API verwenden. Diese Apps setzen die Kopfzeilen nicht mit nur einer Anfrage, sondern automatisieren die über 10.000 erforderlichen Anforderungen.

Die, die ich derzeit verwende, ist Cloudberry Explorer . Dies ist ein Freeware-Dienstprogramm für die Interaktion mit Ihren S3-Buckets. In diesem Tool kann ich mehrere Dateien auswählen und HTTP-Header angeben, die auf alle angewendet werden.

enter image description here

enter image description here

Eine Alternative wäre die Entwicklung eines eigenen Skripts oder Tools mit den S3-API-Bibliotheken.

4
Jorge Palacio

Eine alternative Lösung ist das Hinzufügen eines response-expires-Parameters in Ihre URL. Es setzt den Expires-Header der Antwort. 

Weitere Informationen finden Sie im Abschnitt Anforderungsparameter in http://docs.aws.Amazon.com/AmazonS3/latest/API/RESTObjectGET.html .

2
okwap

Cyberduck wird auch Header bearbeiten. 

  1. Wählen Sie alle Elemente aus
  2. befehl & ich (Info erhalten)
  3. Bietet eine GUI zum Bearbeiten verschiedener Header mit eingebauten Voreinstellungen.

Es wurden nur 6000 Bilder in einem Eimer ohne Probleme verarbeitet.

0
OysterBoo
  1. Wählen Sie den Ordner aus
  2. Klicken Sie im oberen Menü auf Mehr
  3. Wählen Sie Change Metadata
  4. Schlüssel nach Ablaufen hinzufügen
  5. Wert als 2592000 hinzufügen (zum Beispiel)
0
Arun