Dev ve evreleme ortamında büyük WordPress medya kütüphanelerini ele alma stratejileri
WP Boşaltma S3 hakkında sık sık sorduğumuz sorulardan biri, bir geliştirme veya evreleme ortamında kullanılıp kullanılamayacağıdır. Doğru yapılırsa, WP boşaltma S3 kullanılması, yeni ortamı ve bunu yapmak için gereken disk alanını çoğaltmak için gereken süreyi büyük ölçüde azaltabilir. Bu kedinin cildinin birçok yolu vardır. Bunu yapmanın en iyi kanonik yolu olmasa da, tüm stratejileri tartışacağız ve artılarını ve eksilerini özetleyeceğiz. Dalalım ha? Sorunlar, örnek.com’da doğrudan siteleri olan müşterilerimiz olduğunu söylüyor. Şimdi müşteri bizden popüler sitelerinin tüm tasarımları üzerinde çalışmaya başlamamızı istiyor. Bu yeni özellik üzerinde gizli olarak güvenli bir şekilde çalışabileceğimiz ayrı bir ortam hazırlamamız ve müşterilerin yayınlanacak bir başparmak vermeden önce çalışmalarımızı gözden geçirmeleri için bir yer.
İstemcinin WordPress sitesini, herhangi bir WordPress çekirdeği, tema ve eklenti içeren bir etki alanı staging.example.com ile yeni bir sunucuya uygulayarak başlıyoruz. Ardından WP Migrat DB Pro’yu kullanarak örnek.com’dan bir veritabanı çiziyoruz. Ayrıca medya kitaplığımızdan tüm görüntülere de ihtiyacımız var, bu nedenle WP Migrate DB Pro için Medya Dosyası Addon’unu geçiş sırasında kopyalamak için kullanıyoruz. Müşteri sitesinin 5.000’den fazla öğeden oluşan bir medya kütüphanesi vardır, bu nedenle her şeyin kopyalanması uzun zaman alır. Medya kütüphaneleri her iki ortamda da çoğaltılır ve ana bilgisayar sitesi ile aynı alanda sunulur.
Şimdi bu proje üzerinde çalışacak üç geliştiricinin yerel kalkınma ortamlarını hazırlamak için bu süreci tekrarlaması gerekiyor.Sonra o gün, takım nihayet çalışmaya başlamaya hazırdı.Bu, küçük siteler için kabul edilebilir, ancak ölçek iyi değildir ve bakım maliyetleri medya kütüphanesinin boyutu ile orantılı olarak artar.İlk kez yeni bir ortam yaratmaya gittiğinizde bu çok acı verici.Çok büyük bir medya kütüphanesine sahip siteler için, bu indirilmesi saatler hatta günler sürebilir.Medya Kütüphanesine odaklanarak WP boşaltma S3 kullanmanın avantajlarından biri, her ortam için gereken disk alanı miktarını büyük ölçüde azaltmanıza izin vermektir.Şimdi, medya kütüphanesini tekrar tekrar çoğaltmak yerine, bazı ortamların paylaşabileceği yeni bir merkez yere aktarıldı. WP boşaltma S3, her medya kütüphanesi öğesi için ortaya çıkan URL’yi izlediğinden, her ortam bu varlıkları yerel olarak paylaşmadan paylaşabilir. Kilitli Başarı: Kısa sürede yeni ortam! Paylaşılan kaynakların karanlık tarafı hiç kardeşlerle bir oda paylaştınız mı? Birini tam klonunuzla paylaşmayı hayal edin; Güvende bir şey yok! Paylaşılan kaynakların faydaları kendi riskleriyle gelir, ancak bunu anlayarak, bundan kaçınmak için iyi donanımlı olacağız. Bizim durumumuzda, ortak bir kaynak Amazon S3 kovasıdır. S3 kovasını paylaşmanın ana riski, her ortamın kova içeriğini yükleme, silme veya manipüle etme yeteneğine sahip olmasıdır. Genel olarak, yalnızca üretimden değiştirilen üretim tarafından kullanılan varlıkları istersiniz. Önerilen ayarları WP boşaltma S3 kullanırken, aslında nesne sürümleme ayarları sayesinde aynı adla başka bir dosyaya giren bir dosyadan oldukça güvenlisiniz.
Bu ayar, görüntünün zamanına bağlı olarak S3 üzerindeki nesnenin yoluna bir zaman damgası ekler. Yerel olarak, dosyanızın şöyle bir yolu olabilir: wp-conent/uploads/2017/03/sigourney-weaver.jpg bir nesne sürümüne sahip (varsayılan olarak), S3 kovasında bu dosyada şöyle bir yol olacaktır: WP-CONTENT /UPLOADS/2017/03/22195347/sigourney-weaver.jpg benzersiz bir yol dosyası verir. Medya kütüphanesi, aynı dosya adına sahip olması gereken öğeleri hesaplayarak çatışmayı önlemeye yardımcı olur. Nesne sürümünü yapmadan, doğrudan sitelerde yeni öğelerin eklendiği bazı riskler vardır ve diğer ortamlarda aynı addaki diğer öğeler, sepette önceki dosyada bulunan aynı yol için rekabet edebilir. Nesne sürümünü yapmak neredeyse imkansızdır, tarayıcıda ve CDN’de önbellek iptal sorunlarını çözerken (medyanızı doğrudan S3 çocuklarından servis etmeyin). “Sunucudan dosyaları sil” i etkinleştirdiyseniz. , WP boşaltma S3, düşük olan dosyaların S3’teki dosyalara da gerçekleşmemesini sağlamak için ek kontroller yapar. Bir geliştirici olarak temizlik, yeni özellikleri bir bütün olarak test ederken genellikle çok fazla veri ekleriz. S3’te depolama, ambalaj fındıkları gibi ucuz olabilir, ancak ücretsiz değildir. Kovanızı bir dizi test atığı ile kirletmek ve ödemek istemeyebilirsiniz. Üretim dışı kullanım için bir kovaya yüklemek istiyorsak, kolayca kendiniz temizleyebilmek istiyoruz. Kovanın ve erişimin içeriğini göz önünde bulundurarak biraz daha fazla stratejileri keşfedelim. Kova Stratejisi Birlikte: İdeal erişim yoktur, üretim tarafından kullanılan varlığı üretim dışı ortamdan silmemeliyiz. Bunu uygulamanın en kolay yolu, WP boşaltma S3’ün kepçenize erişmesini önlemektir, bu da AWS eklentisindeki erişim tuşunu silmek kadar kolaydır. WP boşaltma S3, eklenti ayar ekranından yapılandırmadan önce bir erişim tuşunun ayarlanmasını gerektirdiğini unutmayın. S3’e erişime izin vermeden eklenti ayarlarında değişiklik yapmak istiyorsanız, anahtarınızı kukla bir değerle değiştirebilirsiniz. Yeni medya kütüphanesi öğeleri azaltılmayacak ve mevcut öğeler Buck S3’ten veya özel alan adınızdan yayınlanmaya devam ederken yerel sunucudan sunulacak.
Uygulanması en kolay
Buck S3 üretiminden öğeler eklenemez veya silinemez
Ücretle azaltılan medya kova/cdn’den yayınlanmaya devam edebilir
Ek ücret yok
Tezgah
Yeni medya, üretimde ne olacağından farklı sunuluyor
Pro Tips – AWS Erişim Anahtarınızı Değiştirme Eklenti ayar ekranını kullanarak veritabanı doğrudan siteden çekildikten hemen sonra kaybolur. Kodunuzda programlanan bu değişikliği uygulamak için özel bir çevre dosyası kullanın! (Aşağıya bakınız) Yeni varlıkların düşürüldüğünü ve URL’nin üretim dışı ortamda doğru bir şekilde yeniden yazıldığını test etmenin gerekli olabileceği zamanlar vardır. Bu durumda, farklı bir stratejiye ihtiyacımız var.
Kova Stratejisi Birlikte: Alternatif Yol Ayarları WP Boşaltma S3 Yolu, S3 Kovası’ndaki Yükleme Kök Dizini (Medya Kütüphanesi) için temel yolu tanımlar. Varsayılan olarak, bu, WordPress tarafından kullanılan yerel dosya sistemi yolunu yansıtır, ancak istediğiniz her şeye değiştirilebilir. Bu yol, her bir medya kütüphanesi öğesi için S3 nesne anahtarının bir parçası olarak saklandığı için, URL’ye zarar vermeden değiştirmekte özgürüz mevcut öğeye. Bu düzenleme değiştirildiğinde, etkilenen tek medya kütüphanesi öğesi, değişiklikten sonra eklenen öğedir. Bu yaklaşımın yararı, diğer ortamlardan yüklemelerin, üretimden eklenen sepet üzerindeki ayrı bir yolda izole edilmesidir. Testi bitirdikten sonra, S3 konsolunu girin ve tüm nesneleri geçici olarak güvenli bir şekilde silmek için özel yolunuzu içeren dizini silin.
Evreleme/geliştirme ortamınız için daha sıkı politikalarla yapılan farklı AWS kimlik bilgileri kullanmanızı öneririz. Aşağıdaki ilke, özel kova yolunuza yazılı erişim sınırlar: {“sürüm”: “2012-10-17”, “ifadesi”: [{“Effect”: “İzin”, “Eylem”: [“S3 : Liste*”,” s3: getBucketlocation “],” kaynak “: [” arn: aws: s3 ::: bucket_name “]}, {” efekt “:” izin ver “,” eylem “: [” S3: deleteObject ” , “S3: Put*”, “S3: Get*”], “Resource”: [“ARN: AWS: S3 ::: Buck_name/Steping”, “Arn: AWS: S3 ::: Buck_name/Steal/*” ]}]} avantajlar
Tüm ortamlarda yeni medya düşürüldü ve S3’ten sunuldu
Üretim dışı ortamdan eklenen ortam bir kova içinde izole edilir ve nantil kolayca temizlenir Alternatif IAM kimlik bilgilerinin hazırlanması ve bakımı
Alternatif kova stratejimiz, WP boşaltma S3 tarafından yeni medya için kullanılacak yeni kovayı belirleyerek kova ayarlarını da değiştirebilir. Yukarıdaki yolda gördüğümüz gibi, kovalar da her medya kütüphanesi öğesinde saklanır, böylece kovalardaki değişikliklerden sadece yeni medya etkilenir. Bu temelde aynı artılara ve eksilere sahip yola dayalı bir strateji ile aynı olduğundan, son stratejimize geçebiliriz. Ayna Sepeti Stratejisi Burada üretim tarafından kullanılan kovayı üretim dışı ortamımıza dağıtılmak üzere yeni bir kovaya klonlayacağız. Bu, üretim tarafından kullanılan kovayı kirletme veya bozma riski olmadan üretim ortamını mümkün olduğunca yakın çoğaltmak için en iyi seçenektir. Yukarıda belirtildiği gibi, kullanılan kova her medya kütüphanesi öğesi için bir veritabanında saklanır. WP’nin bir ayna kovası kullanarak S3’ü boşaltmasını sağlamak için, eski kovanın adını yeniye değiştirmek için arama ve değiştirme veritabanına yapılmalıdır. Bu, daha sonra geçiş sırasında veya WP-CHLi sırasında WP Migrate DB Pro ile yapılabilir. Bu, kovaya bağlı olarak bir zorluk olabilir. Örneğin, orijinal kova adı, site etki alanınızla aynı ise, veritabanınızda arama yaparken ve değişirken kovanın adını değiştirmek için istenmeyen sonuçlara neden olabilir. Kullanmak istediğimiz yeni bir kova yaptıktan sonra, yine de tüm nesneleri üretim kovasından kopyalamamız gerekiyor. Sepetinizin ne kadar büyük olduğuna bağlı olarak, her şeyi yerel olarak indirir ve daha sonra yeni bir sepete geri yüklersek uzun zaman alabilir.
İyi haber şu ki, doğrudan bir kovadan diğerine kopyalayabiliriz! Kötü haber, bu yazı sırasında bunu S3 konsolundan yapamazsınız. Bir kovadan diğerine kopyalamanın en kolay yolu AWS CLI kullanmaktır. Kurulduktan ve yapılandırıldıktan sonra, bir komut tüm yeni kovalarınızı dolduracaktır: AWS S3 Sync S3: // Üretim-Buck-Buck S3: // Evreleme-Bucker Bu komut, herhangi bir nesneyi üretim kovasından kopyalayacak Henüz orada değil yeni kovaya yeni kovaya. Varsayılan olarak, hedefte kaynakta olmayan herhangi bir nesneyi silmez (etkinleştirmek için bir anahtar sağlayabilmenize rağmen), böylece gelecekte aynı komutu kullanmaya devam edebilirsiniz ve yalnızca kayıp dosyaları ekler. Varlıklara hizmet veren tüm çevreyi üretimle aynı şekilde geliştirdi
Tüm ortamlar tüm nesneleri kovadan ekleyebilir/silebilir
Daha sonra temizleme Ayna kovasını çıkarmak kadar kolay
Tezgah
Çoğu zaman alıcı ve yönetilmesi potansiyel olarak zor
Yinelenen nesneler için ödeme
Çevre tabanlı bir yapılandırma yapmak, evreleme/yerel veritabanınızı her yenilediğinizde UI aracılığıyla manuel olarak ayarları değiştirir, felaketler için bir reçetedir. Örneğin, ödeme ağ geçitlerini kum kutusu moduna değiştirmeyi unutmak ciddi sorunlara neden olabilir. Ben de kimlik bilgilerini değiştirmeyi unuttum. Çözüm, bu yapılandırmayı uygulama kodumuza girmektir. Buradaki temel amaç, özel çevresel değerleri uygulamak için belirli ayarların denklemin veritabanını silmektir. Bunu yapmak için, tüm ortamlar için kullanılan uygulamaya bazı ek PHP eklememiz gerekir. Tüm S3 WP boşaltma ayarları sabitlerle kontrol edilebilir. Bu sabitte belirtilen herhangi bir düzenleme, veritabanında depolanandan tercih edilir. Yalnızca sabitleri tanımladığımız için, bu kod wp-config.php’ye, wp-sittings.php yüklenmeden önce eklenebilir. Bir kez daha, bunu yapmanın birçok yolu var, bu yüzden işleri olabildiğince basit tutmaya çalışacağız. Daha kapsamlı bilgi için, her zaman sabitler için WP boşaltma S3 belgesine başvurabilirsiniz. <? PHP /** * Çevre sabitini tanımlayın 'WP_ENV' * Bunu ayarlamanın birçok olası yolu vardır, ancak yalnızca bir kez tanımlanabilir. * * Aynı adla bir ortam değişkeni kullanmak * tanımlama ('wp_env', getEnv ('wp_env')); * * Ana bilgisayar adını eşleştirme * tanımlama ('wp_env', 'örnek.com' == $ _server ['Server_name']? 'Production': 'sahneleme'); */ // Mevcut ortam üretim değilse bu ayarlar yürürlüğe girecektir. if (tanımlanmış ('wp_env') && wp_env! = '
İstemcinin WordPress sitesini, herhangi bir WordPress çekirdeği, tema ve eklenti içeren bir etki alanı staging.example.com ile yeni bir sunucuya uygulayarak başlıyoruz. Ardından WP Migrat DB Pro’yu kullanarak örnek.com’dan bir veritabanı çiziyoruz. Ayrıca medya kitaplığımızdan tüm görüntülere de ihtiyacımız var, bu nedenle WP Migrate DB Pro için Medya Dosyası Addon’unu geçiş sırasında kopyalamak için kullanıyoruz. Müşteri sitesinin 5.000’den fazla öğeden oluşan bir medya kütüphanesi vardır, bu nedenle her şeyin kopyalanması uzun zaman alır. Medya kütüphaneleri her iki ortamda da çoğaltılır ve ana bilgisayar sitesi ile aynı alanda sunulur.
Şimdi bu proje üzerinde çalışacak üç geliştiricinin yerel kalkınma ortamlarını hazırlamak için bu süreci tekrarlaması gerekiyor.Sonra o gün, takım nihayet çalışmaya başlamaya hazırdı.Bu, küçük siteler için kabul edilebilir, ancak ölçek iyi değildir ve bakım maliyetleri medya kütüphanesinin boyutu ile orantılı olarak artar.İlk kez yeni bir ortam yaratmaya gittiğinizde bu çok acı verici.Çok büyük bir medya kütüphanesine sahip siteler için, bu indirilmesi saatler hatta günler sürebilir.Medya Kütüphanesine odaklanarak WP boşaltma S3 kullanmanın avantajlarından biri, her ortam için gereken disk alanı miktarını büyük ölçüde azaltmanıza izin vermektir.Şimdi, medya kütüphanesini tekrar tekrar çoğaltmak yerine, bazı ortamların paylaşabileceği yeni bir merkez yere aktarıldı. WP boşaltma S3, her medya kütüphanesi öğesi için ortaya çıkan URL’yi izlediğinden, her ortam bu varlıkları yerel olarak paylaşmadan paylaşabilir. Kilitli Başarı: Kısa sürede yeni ortam! Paylaşılan kaynakların karanlık tarafı hiç kardeşlerle bir oda paylaştınız mı? Birini tam klonunuzla paylaşmayı hayal edin; Güvende bir şey yok! Paylaşılan kaynakların faydaları kendi riskleriyle gelir, ancak bunu anlayarak, bundan kaçınmak için iyi donanımlı olacağız. Bizim durumumuzda, ortak bir kaynak Amazon S3 kovasıdır. S3 kovasını paylaşmanın ana riski, her ortamın kova içeriğini yükleme, silme veya manipüle etme yeteneğine sahip olmasıdır. Genel olarak, yalnızca üretimden değiştirilen üretim tarafından kullanılan varlıkları istersiniz. Önerilen ayarları WP boşaltma S3 kullanırken, aslında nesne sürümleme ayarları sayesinde aynı adla başka bir dosyaya giren bir dosyadan oldukça güvenlisiniz.
Bu ayar, görüntünün zamanına bağlı olarak S3 üzerindeki nesnenin yoluna bir zaman damgası ekler. Yerel olarak, dosyanızın şöyle bir yolu olabilir: wp-conent/uploads/2017/03/sigourney-weaver.jpg bir nesne sürümüne sahip (varsayılan olarak), S3 kovasında bu dosyada şöyle bir yol olacaktır: WP-CONTENT /UPLOADS/2017/03/22195347/sigourney-weaver.jpg benzersiz bir yol dosyası verir. Medya kütüphanesi, aynı dosya adına sahip olması gereken öğeleri hesaplayarak çatışmayı önlemeye yardımcı olur. Nesne sürümünü yapmadan, doğrudan sitelerde yeni öğelerin eklendiği bazı riskler vardır ve diğer ortamlarda aynı addaki diğer öğeler, sepette önceki dosyada bulunan aynı yol için rekabet edebilir. Nesne sürümünü yapmak neredeyse imkansızdır, tarayıcıda ve CDN’de önbellek iptal sorunlarını çözerken (medyanızı doğrudan S3 çocuklarından servis etmeyin). “Sunucudan dosyaları sil” i etkinleştirdiyseniz. , WP boşaltma S3, düşük olan dosyaların S3’teki dosyalara da gerçekleşmemesini sağlamak için ek kontroller yapar. Bir geliştirici olarak temizlik, yeni özellikleri bir bütün olarak test ederken genellikle çok fazla veri ekleriz. S3’te depolama, ambalaj fındıkları gibi ucuz olabilir, ancak ücretsiz değildir. Kovanızı bir dizi test atığı ile kirletmek ve ödemek istemeyebilirsiniz. Üretim dışı kullanım için bir kovaya yüklemek istiyorsak, kolayca kendiniz temizleyebilmek istiyoruz. Kovanın ve erişimin içeriğini göz önünde bulundurarak biraz daha fazla stratejileri keşfedelim. Kova Stratejisi Birlikte: İdeal erişim yoktur, üretim tarafından kullanılan varlığı üretim dışı ortamdan silmemeliyiz. Bunu uygulamanın en kolay yolu, WP boşaltma S3’ün kepçenize erişmesini önlemektir, bu da AWS eklentisindeki erişim tuşunu silmek kadar kolaydır. WP boşaltma S3, eklenti ayar ekranından yapılandırmadan önce bir erişim tuşunun ayarlanmasını gerektirdiğini unutmayın. S3’e erişime izin vermeden eklenti ayarlarında değişiklik yapmak istiyorsanız, anahtarınızı kukla bir değerle değiştirebilirsiniz. Yeni medya kütüphanesi öğeleri azaltılmayacak ve mevcut öğeler Buck S3’ten veya özel alan adınızdan yayınlanmaya devam ederken yerel sunucudan sunulacak.
Uygulanması en kolay
Buck S3 üretiminden öğeler eklenemez veya silinemez
Ücretle azaltılan medya kova/cdn’den yayınlanmaya devam edebilir
Ek ücret yok
Tezgah
Yeni medya, üretimde ne olacağından farklı sunuluyor
Pro Tips – AWS Erişim Anahtarınızı Değiştirme Eklenti ayar ekranını kullanarak veritabanı doğrudan siteden çekildikten hemen sonra kaybolur. Kodunuzda programlanan bu değişikliği uygulamak için özel bir çevre dosyası kullanın! (Aşağıya bakınız) Yeni varlıkların düşürüldüğünü ve URL’nin üretim dışı ortamda doğru bir şekilde yeniden yazıldığını test etmenin gerekli olabileceği zamanlar vardır. Bu durumda, farklı bir stratejiye ihtiyacımız var.
Kova Stratejisi Birlikte: Alternatif Yol Ayarları WP Boşaltma S3 Yolu, S3 Kovası’ndaki Yükleme Kök Dizini (Medya Kütüphanesi) için temel yolu tanımlar. Varsayılan olarak, bu, WordPress tarafından kullanılan yerel dosya sistemi yolunu yansıtır, ancak istediğiniz her şeye değiştirilebilir. Bu yol, her bir medya kütüphanesi öğesi için S3 nesne anahtarının bir parçası olarak saklandığı için, URL’ye zarar vermeden değiştirmekte özgürüz mevcut öğeye. Bu düzenleme değiştirildiğinde, etkilenen tek medya kütüphanesi öğesi, değişiklikten sonra eklenen öğedir. Bu yaklaşımın yararı, diğer ortamlardan yüklemelerin, üretimden eklenen sepet üzerindeki ayrı bir yolda izole edilmesidir. Testi bitirdikten sonra, S3 konsolunu girin ve tüm nesneleri geçici olarak güvenli bir şekilde silmek için özel yolunuzu içeren dizini silin.
Evreleme/geliştirme ortamınız için daha sıkı politikalarla yapılan farklı AWS kimlik bilgileri kullanmanızı öneririz. Aşağıdaki ilke, özel kova yolunuza yazılı erişim sınırlar: {“sürüm”: “2012-10-17”, “ifadesi”: [{“Effect”: “İzin”, “Eylem”: [“S3 : Liste*”,” s3: getBucketlocation “],” kaynak “: [” arn: aws: s3 ::: bucket_name “]}, {” efekt “:” izin ver “,” eylem “: [” S3: deleteObject ” , “S3: Put*”, “S3: Get*”], “Resource”: [“ARN: AWS: S3 ::: Buck_name/Steping”, “Arn: AWS: S3 ::: Buck_name/Steal/*” ]}]} avantajlar
Tüm ortamlarda yeni medya düşürüldü ve S3’ten sunuldu
Üretim dışı ortamdan eklenen ortam bir kova içinde izole edilir ve nantil kolayca temizlenir Alternatif IAM kimlik bilgilerinin hazırlanması ve bakımı
Alternatif kova stratejimiz, WP boşaltma S3 tarafından yeni medya için kullanılacak yeni kovayı belirleyerek kova ayarlarını da değiştirebilir. Yukarıdaki yolda gördüğümüz gibi, kovalar da her medya kütüphanesi öğesinde saklanır, böylece kovalardaki değişikliklerden sadece yeni medya etkilenir. Bu temelde aynı artılara ve eksilere sahip yola dayalı bir strateji ile aynı olduğundan, son stratejimize geçebiliriz. Ayna Sepeti Stratejisi Burada üretim tarafından kullanılan kovayı üretim dışı ortamımıza dağıtılmak üzere yeni bir kovaya klonlayacağız. Bu, üretim tarafından kullanılan kovayı kirletme veya bozma riski olmadan üretim ortamını mümkün olduğunca yakın çoğaltmak için en iyi seçenektir. Yukarıda belirtildiği gibi, kullanılan kova her medya kütüphanesi öğesi için bir veritabanında saklanır. WP’nin bir ayna kovası kullanarak S3’ü boşaltmasını sağlamak için, eski kovanın adını yeniye değiştirmek için arama ve değiştirme veritabanına yapılmalıdır. Bu, daha sonra geçiş sırasında veya WP-CHLi sırasında WP Migrate DB Pro ile yapılabilir. Bu, kovaya bağlı olarak bir zorluk olabilir. Örneğin, orijinal kova adı, site etki alanınızla aynı ise, veritabanınızda arama yaparken ve değişirken kovanın adını değiştirmek için istenmeyen sonuçlara neden olabilir. Kullanmak istediğimiz yeni bir kova yaptıktan sonra, yine de tüm nesneleri üretim kovasından kopyalamamız gerekiyor. Sepetinizin ne kadar büyük olduğuna bağlı olarak, her şeyi yerel olarak indirir ve daha sonra yeni bir sepete geri yüklersek uzun zaman alabilir.
İyi haber şu ki, doğrudan bir kovadan diğerine kopyalayabiliriz! Kötü haber, bu yazı sırasında bunu S3 konsolundan yapamazsınız. Bir kovadan diğerine kopyalamanın en kolay yolu AWS CLI kullanmaktır. Kurulduktan ve yapılandırıldıktan sonra, bir komut tüm yeni kovalarınızı dolduracaktır: AWS S3 Sync S3: // Üretim-Buck-Buck S3: // Evreleme-Bucker Bu komut, herhangi bir nesneyi üretim kovasından kopyalayacak Henüz orada değil yeni kovaya yeni kovaya. Varsayılan olarak, hedefte kaynakta olmayan herhangi bir nesneyi silmez (etkinleştirmek için bir anahtar sağlayabilmenize rağmen), böylece gelecekte aynı komutu kullanmaya devam edebilirsiniz ve yalnızca kayıp dosyaları ekler. Varlıklara hizmet veren tüm çevreyi üretimle aynı şekilde geliştirdi
Tüm ortamlar tüm nesneleri kovadan ekleyebilir/silebilir
Daha sonra temizleme Ayna kovasını çıkarmak kadar kolay
Tezgah
Çoğu zaman alıcı ve yönetilmesi potansiyel olarak zor
Yinelenen nesneler için ödeme
Çevre tabanlı bir yapılandırma yapmak, evreleme/yerel veritabanınızı her yenilediğinizde UI aracılığıyla manuel olarak ayarları değiştirir, felaketler için bir reçetedir. Örneğin, ödeme ağ geçitlerini kum kutusu moduna değiştirmeyi unutmak ciddi sorunlara neden olabilir. Ben de kimlik bilgilerini değiştirmeyi unuttum. Çözüm, bu yapılandırmayı uygulama kodumuza girmektir. Buradaki temel amaç, özel çevresel değerleri uygulamak için belirli ayarların denklemin veritabanını silmektir. Bunu yapmak için, tüm ortamlar için kullanılan uygulamaya bazı ek PHP eklememiz gerekir. Tüm S3 WP boşaltma ayarları sabitlerle kontrol edilebilir. Bu sabitte belirtilen herhangi bir düzenleme, veritabanında depolanandan tercih edilir. Yalnızca sabitleri tanımladığımız için, bu kod wp-config.php’ye, wp-sittings.php yüklenmeden önce eklenebilir. Bir kez daha, bunu yapmanın birçok yolu var, bu yüzden işleri olabildiğince basit tutmaya çalışacağız. Daha kapsamlı bilgi için, her zaman sabitler için WP boşaltma S3 belgesine başvurabilirsiniz. <? PHP /** * Çevre sabitini tanımlayın 'WP_ENV' * Bunu ayarlamanın birçok olası yolu vardır, ancak yalnızca bir kez tanımlanabilir. * * Aynı adla bir ortam değişkeni kullanmak * tanımlama ('wp_env', getEnv ('wp_env')); * * Ana bilgisayar adını eşleştirme * tanımlama ('wp_env', 'örnek.com' == $ _server ['Server_name']? 'Production': 'sahneleme'); */ // Mevcut ortam üretim değilse bu ayarlar yürürlüğe girecektir. if (tanımlanmış ('wp_env') && wp_env! = '