MageBooster
Kurulum desteği alın
Magento 2.4.9, Mage-OS veya Hyvä; sizin sunucunuzda ya da bizimkinde. Bir iş günü içinde bir planla dönüş yapıyoruz.
✓ Sunucu kurulumu ve ayarları✓ Kurulum ve eklentiler✓ Türkiye, Almanya, Birleşik Krallık ve Avrupa
Boş bir Ubuntu sunucusundan çalışan bir Magento 2.4.9 mağazasına: sunucu seçimi, Linux hazırlığı, tuned-adm, nginx, PHP 8.5, MariaDB, OpenSearch 3, Valkey ve Varnish kurulumu, ardından Magento'nun Composer, GitHub ya da hazır paketle kurulumu.
Adobe'nin kendi sunucularınızdaki Magento Open Source ve Adobe Commerce 2.4.9 için listelediği sürümler bunlar. 2.4.8'e göre çok şey değişti: PHP 8.2, MariaDB 10.6, Elasticsearch ve OpenSearch 2 artık desteklenmiyor.
| Bileşen | 2.4.9 için desteklenen |
|---|---|
| PHP | 8.5 |
| Composer | 2.10 |
| MariaDB / MySQL | MariaDB 12.3 veya MySQL 8.4 |
| Arama | OpenSearch 3 |
| Önbellek ve oturumlar | Valkey 9 |
| Tam sayfa önbelleği | Varnish 8 |
| Web sunucusu | nginx 1.30 |
| Mesaj kuyruğu (isteğe bağlı) | RabbitMQ 4.3 |
Sunucuyu ana sayfaya göre değil; arama, indeksleme ve ödeme sayfasına göre boyutlandırın. 50.000 ürünlük bir katalog, mağaza ön yüzü yavaşlamadan çok önce OpenSearch ve veritabanı için bellek ister.
Yaklaşık 5.000 ürüne ve ayda birkaç yüz siparişe kadar. Her şey tek sunucuda.
Daha büyük kataloglar, birden fazla mağaza görünümü, önde Varnish. Yine tek sunucu.
Veritabanı ve OpenSearch ayrı sunucularda; yoğun trafik veya çok sayıda entegrasyon.
Bu adımlar yeni kurulmuş bir Ubuntu 24.04 LTS sunucusu ve sudo yetkili bir kullanıcı varsayar. Örnek adları ve parolaları kendi değerlerinizle değiştirin.
# mağaza için ayrı bir kullanıcı adduser magento usermod -aG sudo magento # güncellemeler, saat dilimi, swap apt update && apt upgrade -y timedatectl set-timezone Europe/Berlin fallocate -l 4G /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile echo '/swapfile none swap sw 0 0' >> /etc/fstab # güvenlik duvarı: yalnızca SSH, HTTP ve HTTPS ufw default deny incoming ufw allow OpenSSH ufw allow 80,443/tcp ufw enable # kaba kuvvet saldırılarına karşı koruma ve otomatik güvenlik güncellemeleri apt install -y fail2ban unattended-upgrades
/etc/ssh/sshd_config (PasswordAuthentication no).127.0.0.1 adresini dinler. Hiçbiri için açık port gerekmez.tuned, belirli bir iş yükü türü için bir dizi çekirdek ve sistem ayarı uygulayan bir Linux servisidir: CPU frekans davranışı, disk zamanlaması, bellek ve ağ parametreleri. Bir profil seçersiniz; tuned onu uygular ve yeniden başlatmadan sonra da korur.
apt install -y tuned
systemctl enable --now tuned
tuned-adm recommend # tuned'ın bu makine için önerdiği profil
tuned-adm profile virtual-guest
tuned-adm active
tuned-adm verify| Profil | Ne zaman kullanılır |
|---|---|
| virtual-guest | Sunucu bir VPS veya bulut sunucusu. En yaygın durum budur ve bizim kullandığımız da bu. |
| throughput-performance | Toplam iş miktarının en önemli olduğu dedicated donanım. |
| latency-performance | Yanıt süresinde her milisaniyenin önemli olduğu dedicated donanım. |
Ubuntu'nun kendi nginx paketi 1.30'dan eskidir. nginx.org deposunu kullanın:
curl -fsSL https://nginx.org/keys/nginx_signing.key | gpg --dearmor -o /usr/share/keyrings/nginx.gpg echo "deb [signed-by=/usr/share/keyrings/nginx.gpg] http://nginx.org/packages/ubuntu noble nginx" > /etc/apt/sources.list.d/nginx.list apt update && apt install -y nginx
add-apt-repository -y ppa:ondrej/php apt install -y php8.5-fpm php8.5-cli php8.5-bcmath php8.5-curl php8.5-gd php8.5-intl \ php8.5-mbstring php8.5-mysql php8.5-soap php8.5-xml php8.5-xsl php8.5-zip php8.5-sockets
Şu değerleri /etc/php/8.5/fpm/php.ini dosyasında ve CLI'ın php.ini:
memory_limit = 2G
max_execution_time = 1800
realpath_cache_size = 10M
realpath_cache_ttl = 7200
opcache.memory_consumption = 512
opcache.max_accelerated_files = 130000
opcache.validate_timestamps = 0 # canlı mod (production): her yayına almadan sonra PHP-FPM'i yeniden başlatın (reload)Mağazaya kendi PHP-FPM havuzunu verin; havuz magento kullanıcısıyla çalışsın. Ayrıca pm.max_children değerini sunucudaki belleğe göre ayarlayın: kabaca boş RAM'in 150 MB'a bölümü.
curl -LsS https://r.mariadb.com/downloads/mariadb_repo_setup | bash -s -- --mariadb-server-version="mariadb-12.3" apt install -y mariadb-server mariadb-secure-installation mariadb -e "CREATE DATABASE magento; CREATE USER 'magento'@'localhost' IDENTIFIED BY 'change-this-password'; GRANT ALL ON magento.* TO 'magento'@'localhost';"
Sunucunuzdaki /etc/mysql/mariadb.conf.d/90-magento.cnf ve şu ayarlarla başlayın:
[mysqld] innodb_buffer_pool_size = 4G # tek sunuculu kurulumda RAM'in yaklaşık yarısı tmpdir = /dev/shm # geçici tablolar bellekte log_bin_trust_function_creators = 1 # Magento tetikleyiciler (trigger) oluşturur
curl -fsSL https://artifacts.opensearch.org/publickeys/opensearch-release.pgp | gpg --dearmor -o /usr/share/keyrings/opensearch.gpg echo "deb [signed-by=/usr/share/keyrings/opensearch.gpg] https://artifacts.opensearch.org/releases/bundle/opensearch/3.x/apt stable main" > /etc/apt/sources.list.d/opensearch-3.x.list apt update && OPENSEARCH_INITIAL_ADMIN_PASSWORD='Change-This-1!' apt install -y opensearch
Sunucunuzdaki /etc/opensearch/opensearch.yml ve şunları ayarlayın: network.host: 127.0.0.1 ve discovery.type: single-node. Java heap boyutunu jvm.options dosyasında katalog boyutuna göre 1–4 GB olarak ayarlayın, ardından şunu çalıştırın: systemctl enable --now opensearch.
2.4.9'da önbellek ve oturumlar için Redis'in yerini Valkey alır ve aynı Magento ayarlarını kullanır. Ubuntu 24.04 yalnızca Valkey 7.2 paketini sunar; bu yüzden sürüm 9'u şu adresteki resmi sürümden kurun: valkey.io (kaynaktan derleyerek) ya da bir container olarak çalıştırın. Ubuntu 26.04, apt üzerinden Valkey 9 sunar. Valkey'i şu adrese bağlayın: 127.0.0.1 ve önbellek, tam sayfa önbelleği ve oturumlar için ayrı veritabanı numaraları kullanın.
curl -s https://packagecloud.io/install/repositories/varnishcache/varnish80/script.deb.sh | bash apt install -y varnish
Varnish, TLS sonlandırmanızın (nginx veya Cloudflare) arkasında 80 numaralı portu dinler ve nginx ile 8080 gibi dahili bir port üzerinden konuşur. Magento kurulduktan sonra VCL dosyasını şu komutla oluşturun: bin/magento varnish:vcl:generate.
curl -sS https://getcomposer.org/installer -o composer-setup.php php composer-setup.php --install-dir=/usr/local/bin --filename=composer composer --version
Kodu almanın üç yolu var. Canlı bir mağaza için Composer kullanın: ileride sorunsuz upgrade yapmanın ve güvenlik yamaları almanın tek yolu budur.
Ücretsiz bir Adobe hesabı açın, ardından şu sayfaya gidin: Commerce Marketplace › My profile › Access keys ve bir anahtar çifti oluşturun. Açık anahtar (public key) kullanıcı adı, özel anahtar (private key) paroladır.
cd /var/www composer create-project \ --repository-url=https://repo.magento.com/ \ magento/project-community-edition=2.4.9 magento
Geçmişiyle birlikte tam kaynak kodu. Kodu okumak ve katkıda bulunmak için iyidir, canlı bir mağaza için değil.
git clone --branch 2.4.9 --depth 1 \ https://github.com/magento/magento2.git magento cd magento && composer install
GitHub'daki 2.4.9 kaynak arşivi. İndirin, açın, ardından kütüphaneleri Composer'a indirtin.
curl -LO https://github.com/magento/magento2/archive/refs/tags/2.4.9.tar.gz tar xzf 2.4.9.tar.gz && mv magento2-2.4.9 magento cd magento && composer install --no-dev
Önce dosya sahibini ayarlayın, ardından kurulum aracını magento kullanıcısıyla çalıştırın:
cd /var/www/magento
chown -R magento:www-data .
find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
bin/magento setup:install \
--base-url=https://www.example.com/ \
--db-host=localhost --db-name=magento --db-user=magento --db-password='change-this-password' \
--admin-firstname=Admin --admin-lastname=Store --admin-email=you@example.com \
--admin-user=youradmin --admin-password='a-long-unique-password' \
--backend-frontname=a-private-admin-path \
--language=en_US --currency=EUR --timezone=Europe/Berlin --use-rewrites=1 \
--search-engine=opensearch --opensearch-host=127.0.0.1 --opensearch-port=9200 \
--opensearch-enable-auth=1 --opensearch-username=admin --opensearch-password='Change-This-1!' \
--session-save=redis --session-save-redis-host=127.0.0.1 --session-save-redis-db=2 \
--cache-backend=redis --cache-backend-redis-server=127.0.0.1 --cache-backend-redis-db=0 \
--page-cache=redis --page-cache-redis-server=127.0.0.1 --page-cache-redis-db=1Aradığınız redis seçenekleri Valkey ile çalışır. Ardından canlı moda (production) geçin; cron ve indeksleyicileri ayarlayın:
bin/magento deploy:mode:set production bin/magento cron:install bin/magento indexer:set-mode schedule bin/magento indexer:reindex
'disable_locking' => '1' değerini session › redis altında, app/etc/env.phpdosyasında ayarlayın. Sunucularımızdan birinde bu ayar, sayfa yüklendikten sonraki müşteri verisi isteklerini 2,2 sn'den 0,6 sn'ye indirdi.| Belirti | Neden ve çözüm |
|---|---|
| Yayına almadan sonra değişiklikler görünmüyor | Eski layout veya statik dosyalar önbellekte. Önbelleği temizleyin; layout yine değişmiyorsa Magento önbelleğini tutan Valkey veritabanını boşaltın (asla oturum veritabanını değil). |
| Her yayına almadan sonra mağaza bir saat boyunca yavaş | Tam sayfa önbelleğini temizlemek Varnish'i tamamen boşaltır. Yayına almanın hemen ardından en çok ziyaret edilen sayfaları ısıtın. |
| PHP yeniden başlatıldıktan sonraki ilk istekler 2–3 saniye sürüyor | OPcache boşaldı. Bu beklenen bir durum; müşterilerden önce birkaç isteği kendiniz gönderin. |
| SSH erişimi kilitlendi | SSH portunda güvenlik duvarı hız sınırı. Sınırları açmadan önce kendi IP adresinize izin verin. |
| Arama sonuç döndürmüyor | OpenSearch'e ulaşılamıyor ya da indeks boş. Şunu kontrol edin: curl 127.0.0.1:9200 ve şunu çalıştırın: bin/magento indexer:reindex catalogsearch_fulltext. |
MageBooster; Türkiye, Almanya, Birleşik Krallık ve Avrupa genelinde Magento, Mage-OS ve Hyvä mağazalarını kurar ve bakımını yapar. Kurulumun tamamını sizin için yapabilir ya da mevcut kurulumunuzu kontrol edebiliriz.
Hatalı cümleyi ve doğrusunun ne olması gerektiğini yazın. Teşekkür ederiz.
Teşekkürler! Bildiriminiz bize ulaştı.
Bir sorun oluştu. Lütfen tekrar deneyin veya bize WhatsApp'tan yazın.
Mağaza bilgilerinizi gönderin. Hız, güvenlik ve eklentileri inceleyip 3 iş günü içinde hemen uygulayabileceğiniz üç iyileştirme önerisiyle size dönelim.
Mağazanızdan bahsedin, bir iş günü içinde size dönelim. Sohbet etmeyi mi tercih edersiniz? WhatsApp'tan yazın
Adım 1 / 4
Bunu daha sonra her proje için değiştirebilirsiniz.
Devam etmek için bir seçenek seçin.
Adım 2 / 4
Kiminle konuştuğumuzu bilelim.
Lütfen adınızı, şirketinizi ve geçerli bir e-posta adresi girin.
Adım 3 / 4
İlk görüşmeye hazırlanmamıza yardımcı olur.
Sizi en iyi ne tanımlar? *
Ekip büyüklüğü
Bugün hangi platformlarla çalışıyorsunuz?
Sizi en iyi tanımlayan seçeneği seçin.
Adım 4 / 4
Bilgilerinizi kontrol edin. Değiştirmek için geri dönebilirsiniz.
Başvurunuzu göndermek için kutuyu işaretleyin.
Bir sorun oluştu. Lütfen tekrar deneyin veya bize WhatsApp'tan yazın.
Size bir onay e-postası gönderdik. Sonraki adımlar:
Genellikle bir iş günü içinde dönüş yapıyoruz.