Magento 2 Sitesini Localhost'tan Sunucuya Nasıl Aktarırım?

Yayınlanan: 2019-06-06

Magento 2 tabanlı bir siteyi bir yerel ana bilgisayardan diğerine aktarma süreci zaman alıcı bir süreç değildir. Bununla birlikte, sürece dalmadan önce dikkate alınması gereken bir dizi önemli ayrıntı ve özel yön vardır.

Bu blog yazısında, bir Magento 2 sitesini localhost'tan sunucuya Lego kadar kolay bir şekilde aktaracağız. Bir içgörü alalım.

İçindekiler

  • Ana Adımlar
  • Lego kadar kolay: Adım Adım Yönergeler
    • 1. Mevcut ana bilgisayarda Magento 2 site akıl sağlığı kontrolü
    • 2. Uzak ana bilgisayarı (B) hazırlama
    • 3. Uzak ana bilgisayar kontrolü (B)
    • 4. Verileri aktarım için hazırlama
      • 4.1. Dosya dökümü
      • 4.2. Veritabanları dökümü
    • 5. Veri aktarımı
    • 6. Veri paketini açma
      • 6.1. Dosyaları açma
      • 6.2. Veritabanlarını içe aktarma
    • 7. Uzak ana bilgisayardaki veri düzeltmesine erişin (B)
    • 8. Dosya ve dizinlere erişim izinlerinin düzeltilmesi
    • 10. Sorun Giderme: sık karşılaşılan sorunlar
      • Sorun 1
      • 2. Sayı
      • Sayı #3
      • 4. Sayı
      • Sayı #5
  • Sonuç olarak

Ana Adımlar

Başlangıç ​​olarak, aktarmanın ana adımlarına bir göz atalım:

  1. Geçerli ana bilgisayarda (A) Magento 2 site akıl sağlığı kontrolü;
  2. Uzak ana bilgisayarı hazırlama (B);
  3. Uzak ana bilgisayar kontrolü (B);
  4. Verilerin transfere hazır hale getirilmesi; 4.1. Dosya dökümü; 4.2. Veritabanı dökümü;
  5. Veri aktarımı;
  6. Veri paketini açma; 6.1. Dosyaların açılması; 6.2. Veritabanlarının içe aktarılması;
  7. Uzak ana bilgisayardaki (B) veri düzeltmesine erişin;
  8. Dosya ve dizinlere erişim izinlerinin düzeltilmesi;
  9. Magento'yu başlatmadan önceki standart prosedürler;
  10. Uzak ana bilgisayardaki (B) Magento performans kontrolleri;
  11. Sık karşılaşılan sorunların çözümü.

Lego kadar kolay: Adım Adım Yönergeler

1. Mevcut ana bilgisayarda Magento 2 site akıl sağlığı kontrolü

Burada her şey kolay: çalıştırın ve kontrol edin. Genellikle, bu tür amaçlar için bir sipariş (tam döngü) oluşturulmalıdır. Sonra kontrol et:

  • arama;
  • ürün sayfaları,
  • kategoriler,
  • müşterinin hesabı.

Bu önemli bir aşamadır, çünkü yeni bir sunucuya taşındıktan sonra bir şeyin tam olarak ne zaman durduğuna dair sorularla boğuşmaktan uzak durmanızı sağlar. Ayrıca, bu sizi önceden çözülebilecek temel ana bilgisayar sorunlarıyla ilgilenme zorunluluğundan kurtaracaktır (A).

Acil bir ihtiyaç duymadan Magento'yu yarı yarıya devretmemenizi tavsiye ederim. Aktarma işlemine başlamadan önce mevcut ana bilgisayardaki (A) tüm sorunları çözmek çok daha kolaydır. Kanıtlanmış ve test edilmiştir - bu size hem zamandan hem de boyun ağrısından tasarruf sağlayacaktır.

2. Uzak ana bilgisayarı (B) hazırlama

Magento kopyasının dağıtıldığı sunucu, Magento sürümünüz için minimum gereksinimleri karşılamalıdır.

Bu gereksinimler hakkında daha fazla bilgi edinmek için resmi belgeleri inceleyin: https://devdocs.magento.com/guides/v2.3/install-gde/system-requirements-tech.html

Aktarma işleminin sonraki adımlarına geçmeden önce ortam kurulmalıdır (sanal ana bilgisayara sahip web sunucusu, PHP, veritabanı).

Ne yazık ki, her bir ayrı parçanın konfigürasyonu bu makalenin kapsamı dışındadır. Ancak, gerekli ek bilgileri web'de kolayca bulabilirsiniz. Bu nedenle, zorluk çekmemelidir.

Gerekli PHP uzantılarının varlığına özellikle dikkat etmenizi öneririm.

Bu eğitimin herhangi bir adımında herhangi bir sorunuz varsa, lütfen bir yorum bırakın. Hepsini cevaplamak için elimden geleni yapacağım.

3. Uzak ana bilgisayar kontrolü (B)

Magento'yu aktarmadan önce, yeni ana bilgisayarda çalıştığından ve ana bilgisayarın kendisinin düzgün çalıştığından emin olun. İlk olarak, web sunucusunun belirtilen adreste yanıt verdiğini kontrol edin (ana bilgisayarın zaten yapılandırılmış olduğunu varsayıyoruz).

Örneğimde, Linux sunucusunda Apache2 kurulduktan hemen sonra kullanılabilen standart yolu kullanıyorum:

> /var/www/html

 sudo -u apache echo "<?php phpinfo();?>" > /var/www/html/index.php

*Burada ve dahası, gerekirse komutlar ilgili kullanıcılardan çalıştırılacaktır. Komut bir kullanıcı adı olmadan çalıştırılırsa, komutun yürütülmesi, geçerli kullanıcıdan ve ilgili izinlerin kullanılabilirliğinden itibaren kastedilmelidir.

Bu komutu çalıştırdıktan sonra herhangi bir hata görünmüyorsa, her şey yolunda gitti ve `index.php` dosyanız şu adreste mevcut olmalıdır: {host}/index.php. Tarayıcınızdaki sonuç aşağıdaki gibi görünmelidir (yine de çoğu PHP sürümünüze bağlıdır):

Magento 2 Sitesini Localhost'tan Sunucuya Nasıl Aktarırım? | MageWorx Magento Blogu

Bir şeyler ters giderse ve PHP sürümünüz hakkında bilgi göremiyorsanız, lütfen ihtiyacınız olan bir web sunucusunun konfigürasyonu ile ilgili kılavuza bakın.

Ayrıca, günlükleri önceden incelemenizi tavsiye ederim - bu size çok zaman kazandıracaktır.

Ardından, veritabanı hizmetinin başlatıldığını ve düzgün çalıştığını kontrol edin:

 mysql -u root -p

Sonuç olarak, MySQL'e başarıyla bağlanmalısınız. Çıkmak için 'exit' komutunu kullanın.

* MySQL'i kurarken kullandığınız kullanıcı adını ve şifreyi girin.

Ayrıca, MySQL'e başarıyla bağlandıktan sonra mevcut veritabanlarını kontrol etmeniz gerekir.

 SHOW databases;

Aktarmayı planladığınız veritabanlarının adları, yeni sunucuda bulunanlarla aynı olmamalıdır. Benzer veritabanları olması durumunda, bu sorun, örneğin mevcut ancak kullanılmayan bir veritabanını silerek veya aktarmayı düşündüğünüz bir Magento veritabanını yeniden adlandırarak manuel olarak çözülmelidir. Magento ortamının `app/etc/env.php` yapılandırma dosyasına değiştirilen adı mutlaka girmeniz gerektiğini unutmayın.

Sonucunuz aşağıdaki gibi görünmelidir:

Magento 2 Sitesini Localhost'tan Sunucuya Nasıl Aktarırım? | MageWorx Magento Blogu

Ayrıca, hizmetin kendisinin başlatıldığını ve netstat yardımcı programını kullanarak standart bağlantı noktasını dinlediğini kontrol etmeniz gerekir:

 netstat -vulntp | grep -i mysql

Sonucunuz aşağıdaki gibi görünecektir:

 > tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 3366/mysqld

4. Verileri aktarım için hazırlama

4.1. Dosya dökümü

Bir dosya dökümü oluşturmadan önce, eski dökümler, önbellek, günlükler vb. varsa, tüm gereksiz dosyaları Magento dizininden uzaklaştırmanızı şiddetle tavsiye ederim.

 rm -rf var/cache/* var/page_cache/* var/generation/* var/composer_home/cache/* var/log/* pub/static/*

Bu, süreci kısaltmanıza izin verecektir. Gereksiz dosyaları aktarmaktan sizi kurtarmanın yanı sıra, herhangi bir özel ihtiyaç duymadan sunucu alanını kullanmaktan da kaçınmış olursunuz.

*Apache2 web sunucusu kullanıyorsanız ".htaccess" ve diğer gizli dosyaları zorla SİLMEYİN (varsayılan olarak "rf" komutu onları silmez). Bu dosyalar doğru Magento işlemi için gereklidir.

Şimdi, Magento'muzun yerel sunucuda (A) bulunduğu dizine gidin. Benim örneğimde, bu:

 > /Users/sergei/PhpstormProjects

Magento içeren dizin aws-botapi altında adlandırılır.

Uzak ana bilgisayara (B) daha fazla aktarımı için bir arşiv oluşturalım:

 tar -zcf aws-botapi.tar.gz aws-botapi

Arşivin oluşturulduğunu kontrol etmelisiniz:

 ls -la aws-botapi.tar.gz

4.2. Veritabanları dökümü

Magento sitenizde yerel olarak düzenlenmiş birkaç ayrı veritabanı varsa, hepsinin aktarılması gerekir. Örneğimde iki veritabanı kullanılıyor. Bunları Magento ortamının `app/etc/env.php` yapılandırmalarında `db => bağlantı =>` bölümünde bulabilirsiniz.

Magento 2 Sitesini Localhost'tan Sunucuya Nasıl Aktarırım? | MageWorx Magento Blogu

Şimdi, tüm veritabanlarını boşaltın:

 mysqldump -u root -p db1 | gzip > ./db1.sql.gz mysqldump -u root -p db2 | gzip > ./db2.sql.gz

*Veritabanı kullanıcı adı ve veritabanı adı gibi bilgileri kullanın.

5. Veri aktarımı

Magento dosyalarının dökümünü `scp` yardımcı programını (ssh ile kopyalama) kullanarak aktarın veya size uygun olan diğer yöntemleri kullanın (örneğin,`ftp` ile kopyalama):

 scp -i ~/.ssh/myprivatekey.pem aws-botapi.tar.gz [email protected]:/home/ec2-user

Neresi,

a) -i ~/.ssh/myprivatekey.pem, bağlantı için özel anahtarın yoludur (yalnızca parola kullanıyorsanız bunu dikkate almayın);

b) ec2-user, bağlantı için kullanıcı adıdır;

c) 52.12.187.98 sunucu adresidir;

d) /home/ec2-user , dosyaları kopyaladığımız sunucudaki mutlak yoldur.

*Standart olandan farklı bir bağlantı noktası kullanıyorsanız, bunu ayrı bir parametre kullanarak tanımlamayı unutmayın (örneğin, 6000 bağlantı noktası için `-P 6000`).

Kopyalama işlemi tamamlandıktan sonra şu türden bir satır göreceksiniz:

 > aws-botapi.tar.gz 100% 312MB 4.3MB/s 01:11

Dosya dökümü için aynı işlemleri tekrarlayın:

 scp -i ~/.ssh/myprivatekey.pem db1.sql.gz [email protected]:/home/ec2-user scp -i ~/.ssh/myprivatekey.pem db2.sql.gz [email protected]:/home/ec2-user

6. Veri paketini açma

6.1. Dosyaları açma

Sunucuda (B) arşivleri kopyaladığımız dizine gidelim. Magento dosyalarını yerel ana bilgisayarın dizinine açalım:

 > tar -zxf aws-botapi.tar.gz -C /var/www/html/

Dosyaların doğru şekilde açıldığını kontrol ettiğinizden emin olun:

 ls -la /var/www/html

Magento dosyaları alt dizine açılmışsa, bunları 'mv' veya 'cp' komutlarını kullanarak aktarın.

6.2. Veritabanlarını içe aktarma

Sunucuda (B) MySQL'e bağlanın:

 mysql -u root -p

Şimdi yeni bir veritabanı oluşturalım:

 CREATE DATABASE IF NOT EXISTS db1 CHARACTER SET utf8 COLLATE utf8_general_ci;

*Sonuç yaklaşık olarak şöyle görünmelidir:

 > Query OK, 1 row affected (0.01 sec)

Başka veritabanlarınız olması durumunda benzer işlemleri yapın.

Ardından, veritabanlarını dökümden içe aktarın:

 gunzip < /home/ec2-user/db1.sql.gz | mysql -u root -p db1 gunzip < /home/ec2-user/db2.sql.gz | mysql -u root -p db2

MySQL'e bağlanın:

 mysql -u root -p

ve tüm veritabanlarının mevcut olup olmadığını kontrol edin:

 SHOW databases;

Bizimki de dahil olmak üzere tüm veritabanlarının listesi mevcut olmalıdır:

 +--------------------+ | Database | +--------------------+ | db1 | | db2 | | information_schema | | mysql | | performance_schema | +--------------------+ 5 rows in set (0.00 sec)

Az önce içe aktardığımız veritabanını seçin:

 USE db1;

ve tabloların varlığını kontrol edin:

 SHOW tables;

Tabloların oluşturulmamış veya boş olması durumunda, döküm dosyasının kendisini kontrol edin ve yeni bir veritabanı oluşturulduğunda (zaten var olduğu için) adım dışında tüm işlemi bir kez daha tekrarlayın.

7. Uzak ana bilgisayardaki veri düzeltmesine erişin (B)

Magento'da aktarıldıktan sonra değiştirilmesi gereken ana veriler 1) temel URL'ler ve 2) MySQL'e erişim anahtarlarıdır:

Temel URL'leri değiştirme

'core_config_data' tablosundaki tüm eski yolları değiştirmeniz gerekecektir. Başlangıç ​​olarak, eski adresi içeren 'değer' sorgusunu kullanarak bu alanları yerelleştirelim. Eski web sitesi adresinin '1001101010.com' olduğunu varsayalım, arama komutu aşağıdaki gibi görünecektir:

 SELECT * FROM core_config_data WHERE `value` LIKE '%1001101010.com%' \G

* ``` yerine sorgunun sonundaki `\G` kayıtları daha iyi okunabilir hale getirecektir.

** Eğer kuruluysa tablo adlarından önce `table_prefix` kullanmayı unutmayın.

Sonuç yaklaşık olarak şöyle görünecek:

 mysql> SELECT * FROM core_config_data WHERE `value` LIKE '%1001101010.com%' \G *************************** 1. row *************************** config_id: 2 scope: default scope_id: 0 path: web/unsecure/base_url value: http://1001101010.com/
 *************************** 12. row *************************** config_id: 2401 scope: default scope_id: 0 path: web/secure/base_url value: https://1001101010.com/ *************************** 13. row *************************** config_id: 2402 scope: default scope_id: 0 path: web/secure/base_link_url value: https://1001101010.com/ 13 rows in set (0.00 sec)

Bu noktada amacımız eski adresi yenisiyle değiştirmek. Bu amaçla, gerçekten tüm satırlarda değiştirilmesi gerektiğinden emin olalım (3. parti modüllerin konfigürasyonunu içeren bazı nadir durumlar dışında çoğu zaman böyledir) ve aşağıdaki sorguyu çalıştıralım:

 UPDATE `core_config_data` SET `value` = replace(value, '1001101010.com', 'mynewdomain.com') WHERE `value` LIKE '%1001101010.com%';

"değer" alanındaki "1001101010.com" satırlarının tüm oluşumlarını "mynewdomain.com" satırıyla değiştirecektir.

Sonuç yaklaşık olarak aşağıdaki gibi olmalıdır (satır sayısı eşit olmalıdır):

 > Query OK, 13 rows affected (0.00 sec) > Rows matched: 13 Changed: 13 Warnings: 0

Aşağıdaki istek:

 SELECT * FROM core_config_data WHERE `value` LIKE '%1001101010.com%' \G

Şimdi, `app/etc/env.php` ortamının dosyasını düzenlemeye başlama zamanı (Magento kökünden; örnekte, `/var/www/html/` idi).

Bir metin düzenleme programında açalım (Kişisel tercih meselesi olsa da Nano kullanıyorum).

 nano /var/www/html/app/etc/env.php

Ardından, 'kullanıcı adı' ve 'parola' alanlarında yeni sunucudan gelen doğru verileri belirterek `'db' => 'bağlantı'' içindeki verileri düzenleyin.

* ÖNEMLİ! Veritabanınız uzak bir sunucuda bulunuyorsa, verileri değiştirmenize gerek yoktur. Yapmanız gereken tek şey, mevcut sunucudan o uzak veritabanına erişim olduğundan emin olmaktır. (Örneğin, veritabanı sunucusundaki güvenlik duvarı beyaz listesine eklenmiş olması).

Bağlantının yerel olup olmadığını anlamak için 'ana bilgisayar' alanındaki 'localhost' değerini kullanın.

Ardından, dosyayı kaydedin.

8. Dosya ve dizinlere erişim izinlerinin düzeltilmesi

Erişim izinlerini doğru bir şekilde ayarlamak için web sunucunuzun hangi kullanıcıdan ve hangi grupla çalıştığını bilmeniz gerekir.

En sık olarak, CentOS için "apache" veya Ubuntu'da "www-data"dır. Kural olarak, kullanıcı adı grup adına eşittir. Ancak, farklı sunucularda bu farklılık gösterebilir.

Aşağıdaki komut bunu anlamanıza yardımcı olacaktır:

 ps aux | egrep '(apache|httpd)'
Magento 2 Sitesini Localhost'tan Sunucuya Nasıl Aktarırım? | MageWorx Magento Blogu

Sonuç olarak, ilk sütunda kullanıcı adını göreceksiniz (grup adı muhtemelen aynı olacaktır. Ancak, emin değilseniz, "gruplar apache" komutunu kullanın, burada "apache" kullanıcı adıdır. buna bir bak).

Bundan sonraki ilk şey, Magento içindeki tüm dosyaları ve dizinleri web sunucusu kullanıcısına aktarmamız gerekecek (örnekte 'apache'. 'www-data' kullanıcısı için 'apache:apache' yerine ' www-data:www-data` ve benzer şekilde diğerleri için):

 sudo chown -R apache:apache /var/www/html

Ardından, değişikliklerin uygulanıp uygulanmadığını kontrol edin:

 ls -la /var/www/html

Tüm dosya ve dizinler ('..' olarak işaretlenen ana dizin hariç) bir kullanıcıya ve 'apache' grubuna sahip olmalıdır (eğer 'www-data' sisteminizde bir web sunucusu kullanıcısıysa, o zaman bir kullanıcı olarak işaretlenmelidir. sahip):

Magento 2 Sitesini Localhost'tan Sunucuya Nasıl Aktarırım? | MageWorx Magento Blogu

Şimdi, Magento dosyalarına ve dizinlerine erişim izinlerini doğru bir şekilde ayarlamak gerekiyor. Belgelere göre, aşağıdaki kurulum şiddetle tavsiye edilir:

*Tüm komutlar, sürekli olarak 1'den sonra 1 olmak üzere kök Magento!'dan çalıştırılmalıdır. Örnekte, sunucudaki Magento kökü `/var/www/html`dir.

Geçerli konumu kontrol etmek için `pwd` komutunu kullanın.

 find var generated vendor pub/static pub/media app/etc -type f -exec chmod u+w {} + find var generated vendor pub/static pub/media app/etc -type d -exec chmod u+w {} + chmod u+x bin/magento

*Mevcut kullanıcının bu komutları çalıştırma izni yoksa, kullanıcının `root` (`sudo` komutu, `sudo find …` gibi) kullanın.

9. Magento'yu başlatmadan önceki standart prosedürler

Magento'nun komut satırından başlatıldığını kontrol etmenin zamanı geldi. Başlangıç ​​olarak, erişiminiz olan komutların standart çıktısını test edelim:

*Şimdi, izinleri ayarladıktan sonra, Magento'ya herhangi bir erişim, dosyalar, önbellek dosyaları, istatistikler vb. oluşturan aynı web sunucusu kullanıcısından yapılacaktır. Bunu dikkate almazsanız, Magento çalışmayı durdurabilir ve izinleri geri yüklemek zorunda kalacaksınız. (bu kılavuzdaki önceki adım).

**Doğru işlem için sunucunuzda doğru php yorumlayıcısını bulmanız gerekir. Genellikle, "php" takma adı, güncel sürümü ifade eder. Ancak, örneğin `/usr/bin/php72` gibi tam yolu belirtmeniz gerekir.

***Burada ve dahası, tüm Magento komutları sunucudaki (B) Magento kök dizininden çalıştırılacaktır.

 sudo -u apache php bin/magento list

Bu, komut satırında bulunan komutları içeren listeyi yapacaktır:

Magento 2 Sitesini Localhost'tan Sunucuya Nasıl Aktarırım? | MageWorx Magento Blogu

Her şey başarıyla giderse, diğer komutlara geçebilirsiniz:

*Aktarımdan önce dizinleri önbellek ve oluşturulan dosyalarla temizlemediyseniz, aşağıdaki komutu kullanarak bunu yapmanın tam zamanı:

 sudo rm -rf var/cache/* var/page_cache/* var/generation/*
 sudo -u apache php bin/magento setup:upgrade

Bu komutu çalıştırmaktan kaçınabilirsiniz, ancak yine de tüm modüllerin yazıldığından ve hata oluşmadığından emin olmanızı öneririm. Sonuç olarak, işlemde herhangi bir hata görmeden işlenmiş modülleri içeren bir liste göreceksiniz.

Gerekli Magento dosyalarını oluşturmak için derleme yapın:

 sudo -u apache php bin/magento setup:di:compile

*Bu noktada meydana gelen tüm hataları tespit etmek kritik öneme sahiptir. Aksi takdirde, Magento düzgün çalışmayacaktır. Herhangi bir hata bulunmazsa, her şey mükemmeldir. ?

Ardından, statiği oluşturun ( üretim modu etkinse. Mevcut modunuzu kontrol etmek için aşağıdaki komutu kullanın:

 sudo -u apache php bin/magento deploy:mode:show
 sudo -u apache php bin/magento setup:static-content:deploy

*Belirli bir yerel ayar için statik oluşturmak için, bunu komuttan sonra parametre olarak belirtin. Örneğin, Rusça yerel ayarı için "sudo -u apache php bin/magento setup:static-content:deploy ru_RU" kullanılacaktır.

Tebrikler! Magento2 mağazanızı yeni bir sunucuda düzgün şekilde çalışması için localhost'tan başarıyla aktardınız. Şimdi, yeni bir adres girerek bir tarayıcıda açın!

Magento 2 Sitesini Localhost'tan Sunucuya Nasıl Aktarırım? | MageWorx Magento Blogu

10. Sorun Giderme: sık karşılaşılan sorunlar

Sorun 1

Sorun:

Arşivi kopyalarken şu türden bir mesaj alırsanız:

 scp: /var/www/html/aws-botapi.tar.gz: Permission denied

Ardından, ilk durumda arşivi sunucuda nereye kopyaladığınızı kontrol etmelisiniz. Bağlanmak isteyen kullanıcının bu dizinde kayıt yapma izinlerinin olmaması muhtemeldir (örnekte `/var/www/html`).

Çözüm:

` scp ` komutunu çalıştırdıktan sonra veya sunucuya bağlandıktan sonra kopyalamaya çalıştığınız dizini değiştirerek ve mevcut kullanıcı için bu dizine erişim izinlerini ayarlayarak bu sorun çözülebilir:

`sudo chown -R ec2-user /var/www/html` (kullanıcıyı `/var/www/html` dizininin ve içerdiği tüm dosya ve dizinlerin sahibi yapın) veya

`sudo chmod -R o+w /var/www/html` ("/var/www/html" dizininde tüm ("o-ther") kayıt ("w-rite") yapmasına izin verir).

Sistem güvenliğinizi doğrudan etkilediği için bu komutları dikkatli kullanın.

2. Sayı

Sorun:

Veritabanlarını içe aktarırken aşağıdaki hata oluşursa `HATA 1049 (42000): Bilinmeyen veritabanı 'db1' (burada 'db1' bir veritabanının adıdır), bu durumda veritabanınız oluşturulmamıştır.

Çözüm:

Mysql'e erişmeyi deneyin ve bu veritabanını bir kez daha yeniden oluşturun.

Sayı #3

Sorun:

Dosya ve dizin sahibini değiştirirken `chown: geçersiz kullanıcı: …` komutunu görüyorsanız, muhtemelen sunucunuzda web sunucusu kullanıcısını yanlış belirtmişsinizdir.

Çözüm:

Sisteminizdeki sunucunun konfigürasyonu ile ilgili kılavuzlara bakın veya doğru kullanıcıyı belirlemek için `ps aux` yardımcı programını kullanın.

4. Sayı

Sorun:

Magento'yu yeni bir sunucuda başlatırken PHP hataları varsa (kural olarak, bazı PHP uzantılarının olmaması anlamına gelir)…

Çözüm:

Bu, eksik uzantıların yüklenmesiyle çözülebilir.

a) `Monolog'un NormalizerFormatter'ını kullanmak için PHP'nin json uzantısı gereklidir` ―

*php-json* uzantısı eksik;

b) `PHP Önemli hata: Yakalanmayan Hata: 'DOMDocument' Sınıfı …'da bulunamadı' ―

*php-xml* uzantısı eksik;

c) `PHP Önemli hata: 'IntlDateFormatter' Sınıfı …'da bulunamadı ― ―

*php-intl* uzantısı eksik.

Sayı #5

Sorun:

"besteci güncelleme" komutunu çalıştırırken PHP uzantıları eksikse, aşağıdaki hataları görürsünüz:

Örneğin,

`phpunit/phpunit 6.5.14 ext-mbstring gerektirir * -> istenen PHP uzantısı mbstring sisteminizde eksik.`

Çözüm:

Bu tür hatalarla başa çıkmak için, oluşturucunun bahsettiği PHP uzantılarını yüklemeniz yeterlidir. Örneğin, `yum install php-mbstring`.

Magento 2 sürümünüz için gerekli uzantıların tam listesi resmi belgelerde bulunabilir.

Sonuç olarak

Hepiniz hazırsınız! Bu yazıda, Magento 2 sitenizi localhost'tan sunucuya aktarma konusunda izlenmesi kolay adımları sunmak için elimden geleni yaptım.


Hala sorularınız varsa veya görüşlerinizi paylaşmak istiyorsanız, aşağıdaki yorum bölümünü kullanmaktan çekinmeyin. Tüm soruları ve endişeleri cevaplamak için elimden geleni yapacağım!