Ο δικός σας χώρος αποθήκευσης · WordPress + WooCommerce
WooCommerce AWS S3
Το πρόσθετο Alter Product περιλαμβάνει έτοιμη μονάδα αποθήκευσης AWS S3. Διατηρήστε τις υποστηριζόμενες ομάδες αρχείων του προσθέτου στο δικό σας ιδιωτικό bucket, συνδέστε το στο WordPress και μεταφέρετε τα υπάρχοντα αρχεία με τα εργαλεία του προσθέτου.
Το Alter Product δεν χρεώνει επιπλέον τέλος χωρητικότητας για την επέκταση αυτού του συνδεδεμένου χώρου αποθήκευσης. Η AWS χρεώνει στον λογαριασμό σας την αποθήκευση, τα αιτήματα και τη μεταφορά δεδομένων. Εξακολουθούν να ισχύουν η φιλοξενία WordPress και οι συνήθεις κανόνες του προγράμματος και των συνεδριών embed.
Οι οδηγίες ακολουθούν τον οδηγό εγκατάστασης του προσθέτου. Οι ετικέτες της κονσόλας AWS παραμένουν στα αγγλικά.
Αποθήκευση, παράδοση αρχείων και κόστος
Το S3 αποθηκεύει τα αντικείμενα αρχείων του προσθέτου. Το WordPress παραμένει υπεύθυνο για την εξουσιοδοτημένη παράδοσή τους στο πρόγραμμα περιήγησης.
Ιδιωτική αποθήκευση για το πρόσθετο
Το πρόγραμμα περιήγησης δεν κατεβάζει αρχεία απευθείας από το S3. Το WordPress ανακτά και επαληθεύει τα αρχεία από το ιδιωτικό bucket και έπειτα τα παρέχει μέσω των δικών του endpoints. Αφήστε το S3 CORS κενό και το Block Public Access ενεργό· δεν πρόκειται για δημόσιο bucket ούτε για απευθείας σύνδεση CDN.
Η μονάδα καλύπτει τις υποστηριζόμενες ομάδες αρχείων Alter Product. Η σύνδεση ενός bucket δεν μετακινεί όλα τα αρχεία του WordPress ούτε αλλάζει τα όρια των ενσωματωμένων εργαλείων.

Πληρώνετε την AWS για τους πόρους που χρησιμοποιείτε
Το Alter Product δεν επιβάλλει πρόσθετη χρέωση για την αύξηση της χωρητικότητας του συνδεδεμένου bucket. Οι χρεώσεις AWS εξαρτώνται από τη χρήση, την περιοχή και την κλάση αποθήκευσης· ελέγξτε τον τρέχοντα τιμοκατάλογο S3 αντί να θεωρείτε δεδομένη μια σταθερή τιμή.
Επειδή το WordPress παρέχει τα αρχεία, η κίνηση μπορεί να προσμετράται και στο εύρος ζώνης της φιλοξενίας σας. Το S3 δεν εγγυάται μηδενική μεταφορά δεδομένων μέσω φιλοξενίας ούτε απεριόριστη δυνατότητα μεταφοράς του διακομιστή.
Δημιουργήστε bucket με τις υποστηριζόμενες ρυθμίσεις
Τα παρακάτω ονόματα πεδίων αντιστοιχούν στην αγγλική κονσόλα AWS και στον οδηγό εγκατάστασης του προσθέτου.
Δημιουργήστε bucket γενικής χρήσης
Συνδεθείτε στην AWS, ανοίξτε το Amazon S3 και επιλέξτε General purpose buckets → Create bucket. Επιλέξτε περιοχή και όνομα με πεζά γράμματα, αριθμούς και παύλες, χωρίς τελείες. Αντιγράψτε το πλήρες όνομα του bucket, μαζί με οποιοδήποτε επίθημα προσθέσει η AWS.
- Εφαρμόστε τις ρυθμίσεις του πίνακα και επιλέξτε Create bucket.
- Κρατήστε το πλήρες όνομα του bucket, την περιοχή και το 12ψήφιο αναγνωριστικό λογαριασμού AWS του ιδιοκτήτη.
- Αφήστε το Cross-origin resource sharing (CORS) κενό. Τα αιτήματα προς το S3 προέρχονται από τον διακομιστή WordPress.
| Πεδίο AWS | Ρύθμιση |
|---|---|
| Bucket type | General purpose |
| Bucket namespace | Account Regional namespace (συνιστάται) |
| Object Ownership | ACLs disabled / Bucket owner enforced |
| Block Public Access | Block all public access (και οι τέσσερις ρυθμίσεις) |
| Bucket Versioning | Enable |
| Default encryption | Server-side encryption with Amazon S3 managed keys (SSE-S3 / AES256) |
| Bucket Key | Disable |
| Advanced settings → Object Lock | Disable |
Απαιτήστε HTTPS
Προσθέστε κανόνα μεταφοράς χωρίς να κάνετε το bucket δημόσιο ή να παραχωρήσετε πρόσβαση στα αντικείμενα.
Προσθέστε την πολιτική του bucket
Ανοίξτε Permissions → Bucket policy → Edit. Αντικαταστήστε και τις δύο τιμές EXAMPLE-BUCKET με το πλήρες όνομα του bucket. Αν υπάρχει ήδη πολιτική, διατηρήστε τις δηλώσεις της και προσθέστε αυτόν τον κανόνα αφού ελέγξετε ολόκληρο το έγγραφο.
- Ελέγξτε τα μηνύματα του επεξεργαστή και επιλέξτε Save changes.
- Επιβεβαιώστε ότι ο κανόνας αποθηκεύτηκε. Διατηρήστε ενεργό το Block all public access.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DenyInsecureTransport",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::EXAMPLE-BUCKET",
"arn:aws:s3:::EXAMPLE-BUCKET/*"
],
"Condition": {
"Bool": {
"aws:SecureTransport": "false",
"aws:PrincipalIsAWSService": "false"
}
}
}
]
}Δημιουργήστε περιορισμένη πρόσβαση IAM
Χρησιμοποιήστε ειδική πολιτική για αυτό το bucket και το πρόθεμα, αντί για AdministratorAccess ή AmazonS3FullAccess.
Δημιουργήστε την πολιτική του προσθέτου
Στο IAM → Policies → Create policy → JSON, επικολλήστε το παρακάτω έγγραφο. Αντικαταστήστε κάθε EXAMPLE-BUCKET με το πλήρες όνομα του bucket. Το πρόθεμα alter-product πρέπει να συμφωνεί με το Folder prefix στο WordPress· αλλάξτε το σε κάθε Resource αντικειμένου αν επιλέξετε διαφορετικό πρόθεμα.
- Επικυρώστε την πολιτική, επιλέξτε Next και δώστε της όνομα, όπως AlterProductS3Storage.
- Επιλέξτε Create policy και κρατήστε το όνομά της για τη διαμόρφωση του χρήστη.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ReadRequiredBucketControls",
"Effect": "Allow",
"Action": [
"s3:GetBucketVersioning",
"s3:GetBucketOwnershipControls",
"s3:GetBucketPublicAccessBlock",
"s3:GetEncryptionConfiguration"
],
"Resource": "arn:aws:s3:::EXAMPLE-BUCKET"
},
{
"Sid": "WriteAndReadVersionedPluginObjects",
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObjectVersion"
],
"Resource": [
"arn:aws:s3:::EXAMPLE-BUCKET/alter-product/objects/*",
"arn:aws:s3:::EXAMPLE-BUCKET/alter-product/.storage-tests/*"
]
},
{
"Sid": "RecoverJournalOwnedObjects",
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::EXAMPLE-BUCKET/alter-product/objects/*"
},
{
"Sid": "DeleteOnlyConnectionTestVersions",
"Effect": "Allow",
"Action": "s3:DeleteObjectVersion",
"Resource": "arn:aws:s3:::EXAMPLE-BUCKET/alter-product/.storage-tests/*"
}
]
}Δημιουργήστε αποκλειστικό χρήστη και κλειδί πρόσβασης
Επιλέξτε IAM → Users → Create user. Αφήστε μη επιλεγμένο το Provide user access to the AWS Management Console.
- Επιλέξτε Next → Attach policies directly και συνδέστε μόνο την παραπάνω πολιτική. Ολοκληρώστε το Create user.
- Ανοίξτε το Security credentials → Access keys → Create access key αυτού του χρήστη. Για αυτή τη χειροκίνητη διαμόρφωση του προσθέτου, επιλέξτε Other → Next και έπειτα Create access key.
- Αποθηκεύστε το Access key ID και το Secret access key σε διαχειριστή κωδικών πρόσβασης. Το μυστικό εμφανίζεται μόνο μία φορά. Εισαγάγετέ τα απευθείας στο WordPress μέσω HTTPS, όχι σε μηνύματα ή στιγμιότυπα οθόνης.
Αποθηκεύστε και δοκιμάστε τη σύνδεση WordPress
Ανοίξτε Alter Product → Settings → Storage στον πίνακα διαχείρισης HTTPS του καταστήματος. Επιλέξτε AWS S3 και + / Add connection.
Εισαγάγετε τα στοιχεία σύνδεσης
Επιλέξτε New connection. Οι ίδιες ενσωματωμένες οδηγίες είναι διαθέσιμες στο AWS S3 setup guide.
- Επιλέξτε Save connection και περιμένετε την επιβεβαίωση.
- Επιλέξτε Test connection. Αποθηκεύστε τυχόν αλλαγές πριν δοκιμάσετε ξανά.
- Ελέγξτε το αποτέλεσμα στο παράθυρο διαλόγου και στη στήλη Last connection test. Τα πεδία κλειδιών παραμένουν σκόπιμα κενά μετά την αποθήκευση.
| Πεδίο | Τιμή |
|---|---|
| Bucket name | Πλήρες όνομα bucket, όχι ARN, URL s3:// ή διεύθυνση HTTPS· χωρίς τελείες. |
| Folder prefix | alter-product, όπως στην πολιτική IAM. Χρησιμοποιήστε γράμματα, αριθμούς, παύλες, κάτω παύλες και χωριστούς φακέλους· χωρίς κάθετο στην αρχή ή στο τέλος. |
| Bucket owner AWS account ID | Το 12ψήφιο αναγνωριστικό λογαριασμού του ιδιοκτήτη, χωρίς κενά. |
| AWS region | Η πραγματική περιοχή του bucket. Η φόρμα χρησιμοποιεί από προεπιλογή το eu-central-1. |
| AWS access key ID / AWS secret access key | Το αποθηκευμένο ζεύγος κλειδιών του αποκλειστικού χρήστη IAM. |
| Use temporary AWS credentials | Αφήστε μη επιλεγμένο για το μακροχρόνιο κλειδί αυτού του χρήστη IAM. Ενεργοποιήστε μόνο για προσωρινά διαπιστευτήρια και δώστε το AWS session token. |
Αν αποτύχει η δοκιμή σύνδεσης
Επαληθεύστε το όνομα, τον ιδιοκτήτη και την περιοχή του bucket, τις απαιτούμενες ρυθμίσεις και το ακριβές πρόθεμα τόσο στο WordPress όσο και στο IAM. Κρατήστε το CORS κενό· μην απενεργοποιείτε την προστασία από δημόσια πρόσβαση.
Το αποθηκευμένο bucket, το πρόθεμα, ο ιδιοκτήτης και η περιοχή προσδιορίζουν τη σύνδεση. Για διαφορετικό προορισμό, επιλέξτε New connection. Το Edit → Reconnect αντικαθιστά τα διαπιστευτήρια διατηρώντας τις ίδιες αποθηκευμένες αναφορές αρχείων.
Στείλτε στην υποστήριξη το αποτέλεσμα της δοκιμής, χωρίς κλειδιά πρόσβασης. Απαιτείται επιτυχής δοκιμή σύνδεσης πριν επιλέξετε αυτό το S3 ως προεπιλογή.
Επιλέξτε προεπιλογή και μεταφέρετε υπάρχοντα αρχεία
Ο προεπιλεγμένος προορισμός και η μεταφορά είναι ξεχωριστές ενέργειες.
Χρησιμοποιήστε S3 για νέες ομάδες
Επιλέξτε Make default στη γραμμή της αποθηκευμένης σύνδεσης. Το πρόσθετο δοκιμάζει τη σύνδεση και αλλάζει την προεπιλογή μόνο μετά την επιτυχία. Αυτό ισχύει για νέες ομάδες αρχείων· οι υπάρχουσες ομάδες και οι μεταγενέστερες αναθεωρήσεις τους διατηρούν τον καταγεγραμμένο προορισμό μέχρι να μεταφερθούν.
Μεταφέρετε τις υποστηριζόμενες υπάρχουσες ομάδες
Δημιουργήστε κοινό αντίγραφο ασφαλείας της βάσης δεδομένων, των salts του WordPress και των αρχείων πριν από την πρώτη μεταφορά. Ξεκινήστε σε δοκιμαστικό περιβάλλον ή με μια μικρή ομάδα. Ανοίξτε Migrate στη γραμμή του S3 προορισμού· το άνοιγμα του πίνακα δεν αντιγράφει αρχεία.
Το Auto migration καλύπτει τις υποστηριζόμενες ομάδες εκτός του επιλεγμένου προορισμού. Δεν εγγυάται μεταφορά άσχετων αρχείων WordPress.
- Επιλέξτε Start migration. Το πρόσθετο δοκιμάζει το S3, προετοιμάζει κάθε ομάδα, την αντιγράφει, την επαληθεύει και αλλάζει τις αναφορές της.
- Κρατήστε τη σελίδα ανοιχτή. Το Pause σταματά μετά την τρέχουσα ομάδα· το Resume migration συνεχίζει την αποθηκευμένη πρόοδο. Αν κλείσετε τη σελίδα, ανοίξτε την ξανά για να συνεχιστεί η αποστολή εργασιών.
- Αν αποτύχει μια ομάδα, εξετάστε το μήνυμα και το Advanced, διορθώστε την αιτία και συνεχίστε. Μην επαναλαμβάνετε στα τυφλά μια ενέργεια της οποίας το αποτέλεσμα μεταφόρτωσης είναι άγνωστο.
- Μετά το Migration completed, δοκιμάστε την κανονική ανάγνωση πόρων, την επεξεργασία, τις προεπισκοπήσεις και την πρόσβαση στα αρχεία παραγγελιών. Νέες ομάδες που δημιουργήθηκαν κατά τη σάρωση ίσως χρειαστούν άλλο πέρασμα.
Η αφαίρεση γραμμής δεν διαγράφει τα αποθηκευμένα αρχεία
Αλλάξτε πρώτα την προεπιλογή, αν χρειάζεται. Το Remove αποσύρει τη σύνδεση από τη λίστα, ενώ τα υπάρχοντα αρχεία και τα αποθηκευμένα διαπιστευτήριά τους παραμένουν διαθέσιμα. Δεν είναι εντολή καθαρισμού αντικειμένων AWS.
Μοιραστείτε αποθήκευση μεταξύ κόμβων WordPress
Ένας κοινόχρηστος προορισμός S3 μπορεί να μειώσει την εξάρτηση από τον δίσκο αρχείων ενός κόμβου. Ο εξισορροπητής φορτίου εξακολουθεί να χρειάζεται σωστά κοινόχρηστη εγκατάσταση WordPress.
Απαιτήσεις για πολλούς κόμβους
Για μία εγκατάσταση WordPress πίσω από εξισορροπητή φορτίου, εξασφαλίστε όλα τα παρακάτω μαζί:
- Ένα συνεπές σημείο εγγραφής SQL και κοινή κατάσταση βάσης δεδομένων του προσθέτου.
- Κοινόχρηστο κατάλογο uploads για αρχεία που παραμένουν τοπικά και για διατηρούμενες πηγές μεταφοράς.
- Τα ίδια αρχικά salts WordPress σε κάθε κόμβο, ώστε τα αποθηκευμένα διαπιστευτήρια και τα κρυπτογραφημένα αρχεία να παραμένουν αναγνώσιμα.
- Ιδιωτικό προσωρινό κατάλογο ανά κόμβο για τις εργασίες μεταφοράς.
- Συνεπή διαμόρφωση του προσθέτου και πρόσβαση στο ίδιο ιδιωτικό bucket S3 και στις ίδιες εκδόσεις αντικειμένων.
- Χρησιμοποιήστε το τυπικό wpdb με εγγενές mysqli και πίνακες InnoDB. Δεν υποστηρίζονται drop-ins δρομολόγησης βάσεων δεδομένων, όπως το HyperDB· η εξισορρόπηση φορτίου εδώ γίνεται στο επίπεδο HTTP.
Διατηρήστε λειτουργική την ανάκτηση και την εναλλαγή κλειδιών
Διατηρήστε μαζί τη βάση δεδομένων, τα salts και τις εκδόσεις αρχείων στις οποίες υπάρχουν αναφορές.
Δημιουργήστε αντίγραφα ασφαλείας, επανασυνδεθείτε και επαληθεύστε
Χρησιμοποιήστε Edit → Reconnect για να αντικαταστήσετε τα διαπιστευτήρια της ίδιας αποθηκευμένης σύνδεσης. Δοκιμάστε την ανάγνωση τρεχόντων και παλαιότερων αρχείων πριν αποσύρετε το παλιό κλειδί, συμπεριλαμβάνοντας άλλες αποθηκευμένες συνδέσεις που ίσως το χρησιμοποιούν ακόμη.
Κρατήστε ενεργό τον έλεγχο εκδόσεων S3 και διατηρήστε τις εκδόσεις στις οποίες αναφέρεται το πρόσθετο. Μην εφαρμόζετε καθαρισμό κύκλου ζωής που διαγράφει απαραίτητες ιστορικές εκδόσεις. Δοκιμάστε την κοινή επαναφορά της βάσης δεδομένων, των salts και των αποθηκευμένων αρχείων.
Τα προσωρινά διαπιστευτήρια λήγουν και απαιτούν νέο έγκυρο διακριτικό και κλειδιά· το πρόσθετο δεν τα ανανεώνει αυτόματα. Παρακολουθείτε τη χρήση AWS και τη μεταφορά δεδομένων της φιλοξενίας καθώς μεγαλώνει το κατάστημα.