PHP Composer’ı Paylaşımlı/Sanal Hosting’e Nasıl Kuracaksınız: Tam Bir Rehber
PHP Composer, PHP için fiili standart bağımlılık yöneticisidir ve geliştiricilerin projelerinin bağlı olduğu kütüphaneleri bildirmesine, yüklemesine ve yönetmesine olanak tanır. Bir Laravel uygulaması, bir Symfony API’si veya özel bir PHP projesi oluşturuyor olsanız da, Composer iş akışınızda vazgeçilmez bir araçtır.
Bu kapsamlı rehber, SSH erişiminden küresel yapılandırmaya ve gerçek dünya kullanımına kadar, sanal veya paylaşımlı barındırma ortamında PHP Composer yüklemenin her adımında size yol gösterir.
PHP Composer Nedir ve Neden İhtiyacınız Var?
PHP Composer, proje düzeyinde bağımlılık yönetimini işleyen bir paket yöneticisidir. Kütüphaneleri manuel olarak indirmek ve otomatik yüklemeyi yönetmek yerine, Composer bağımlılıkları otomatik olarak çözer, doğru sürümleri indirir ve optimize edilmiş bir otomatik yükleyici oluşturur.
Temel faydalar şunlardır:
- Otomatik bağımlılık çözümü — Composer sürüm çatışmalarını ve iç içe bağımlılıkları işler.
- Yeniden üretilebilir derlemeler —
composer.lockdosyası, her takım üyesinin ve dağıtım ortamının aynı paket sürümlerini kullanmasını sağlar. - Geniş ekosistem — Varsayılan Composer deposu olan Packagist’te 350.000’den fazla pakete erişim.
- PSR-4 otomatik yükleme — Kod tabanınız genelinde manuel
requireveincludeifadelerini ortadan kaldırır.
PHP uygulamalarını Paylaşımlı Web Hosting veya VPS Hosting ortamında çalıştırıyorsanız, Composer yüklemek profesyonel ve sürdürülebilir bir geliştirme iş akışına doğru ilk adımlardan biridir.
Ön Koşullar
Başlamadan önce, aşağıdaki gereksinimlerin karşılandığını doğrulayın:
| Gereksinim | Ayrıntılar |
|---|---|
| Hosting erişimi | Hosting hesabınızda SSH erişimi etkinleştirilmiş |
| PHP sürümü | PHP 7.2 veya daha yüksek (PHP 8.x şiddetle önerilir) |
| PHP uzantıları | openssl, phar, mbstring, json etkinleştirilmiş olmalıdır |
| İzinler | Ana dizininize veya $PATH içindeki bir dizine yazma yeteneği |
| Terminal istemcisi | Terminal (macOS/Linux) veya PuTTY / Windows Terminal (Windows) |
> Not: SSH erişimi olmayan yönetilen paylaşımlı hosting planında iseniz, etkinleştirmesi için hosting sağlayıcınızla iletişime geçin. AlexHost’un Paylaşımlı Web Hosting planları SSH erişimi içerir ve ihtiyaç duyduğunuz kontrolü sağlar.
Adım 1: SSH Aracılığıyla Sunucunuza Bağlanın
Terminal uygulamanızı açın ve barındırma hesabınıza bir SSH bağlantısı kurun:
ssh username@yourdomain.comusername yerine gerçek SSH kullanıcı adınızı ve yourdomain.com yerine alan adınızı veya sunucu IP adresinizi yazın.
Örnek:
ssh john@203.0.113.45Kimlik doğrulaması yapıldıktan sonra, ana dizininize (genellikle /home/username/) yönlendirileceksiniz. Mevcut konumunuzu şu komutla doğrulayabilirsiniz:
pwdAdım 2: PHP’nin Kullanılabilir Olduğunu Doğrulayın
Composer’ı indirmeden önce, PHP’nin yüklü olduğunu ve komut satırından erişilebilir olduğunu doğrulayın:
php -vŞuna benzer bir çıktı görmelisiniz:
PHP 8.2.10 (cli) (built: Sep 5 2023 08:15:22) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.10, Copyright (c) Zend TechnologiesPHP bulunamazsa veya sürüm 7.2’nin altındaysa, hosting sağlayıcınıza başvurun veya ortamınızı yükseltin. VPS Hosting planındaki kullanıcılar, gerektiğinde PHP sürümlerini yüklemek veya güncellemek için tam kontrole sahiptir.
Ayrıca gerekli uzantıların yüklendiğini doğrulayın:
php -m | grep -E 'openssl|phar|mbstring|json'Dört uzantının tümü çıktıda görünmelidir.
Adım 3: Composer Yükleyicisini İndirin
Composer, resmi bir PHP tabanlı yükleyici betiği sağlar. Aşağıdaki komutu kullanarak indirin:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"Bu, composer-setup.php yükleyici betiğini mevcut çalışma dizininize indirir.
Adım 4: Yükleyici Bütünlüğünü Doğrulayın
Bu adım güvenlik açısından kritiktir. Dosyanın kurcalanmadığından veya indirme sırasında bozulmadığından emin olmak için yükleyiciyi çalıştırmadan önce her zaman SHA-384 hash değerini doğrulayın.
4a. Beklenen hash değerini resmi Composer Genel Anahtarlar sayfasından alın:
En son yükleyici hash değerini almak için https://composer.github.io/pubkeys.html adresini ziyaret edin.
4b. Doğrulama komutunu çalıştırın:
HASH="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"Ardından yayınlanan hash değeriyle karşılaştırın:
php -r "if (hash_file('sha384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"Eğer “Installer verified” görürseniz, devam edin. Eğer “Installer corrupt” görürseniz, hemen durdurun, dosyayı silin ve yeniden indirin.
Alternatif olarak, resmi Composer belgelerindeki tek satırlık komutu kullanabilirsiniz, EXPECTED_HASH yerine genel anahtarlar sayfasındaki değeri koyarak:
php -r "if (hash_file('sha384', 'composer-setup.php') === 'EXPECTED_HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"Adım 5: Composer Yükleyicisini Çalıştırın
Yükleyici doğrulandıktan sonra, Composer’ı yüklemek için çalıştırın:
php composer-setup.phpBaşarılı bir şekilde çalıştırıldığında, şöyle bir çıktı göreceksiniz:
All settings correct for using Composer
Downloading...
Composer (version 2.x.x) successfully installed to: /home/username/composer.phar
Use it: php composer.pharBir composer.phar dosyası artık mevcut dizininizde oluşturulmuştur. Bu aşamada, php composer.phar çağırarak Composer’ı zaten kullanabilirsiniz, ancak bunu global olarak erişilebilir hale getirmek çok daha uygun olacaktır.
Adım 6: Yükleyici Betiğini Temizle
Artık gerekli olmadığından kurulum betiğini kaldırın:
php -r "unlink('composer-setup.php');"Adım 7: Composer’ı Global Olarak Yükleyin
Composer’ı sisteminizin herhangi bir yerinden sadece composer komutuyla çalıştırmak için, composer.phar ikili dosyasını sisteminizin $PATH içinde yer alan bir dizine taşıyın.
Bir VPS veya Dedicated Server’da (sudo erişimi ile):
sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composerShared Hosting’de (sudo erişimi olmadan):
sudo ayrıcalıklarınız yoksa, Composer’ı ev dizininiz içinde yerel olarak yükleyin:
mkdir -p ~/bin
mv composer.phar ~/bin/composer
chmod +x ~/bin/composerArdından ~/bin öğesini $PATH öğesine ekleyin; aşağıdaki satırı ~/.bashrc veya ~/.bash_profile öğesine ekleyerek:
export PATH="$HOME/bin:$PATH"Shell yapılandırmasını yeniden yükleyin:
source ~/.bashrc> Pro İpucu: Tam root erişimine ihtiyacınız varsa ve PHP ortamınız üzerinde daha fazla kontrol istiyorsanız, bir VPS Hosting planına veya Dedicated Server hizmetine yükseltmeyi düşünün; böylece sistem düzeyinde kısıtlamasız yapılandırma yapabilirsiniz.
Adım 8: Kurulumu Doğrulayın
Composer’ın kurulu olduğunu ve genel olarak erişilebilir olduğunu doğrulayın:
composer --versionBeklenen çıktı:
Composer version 2.x.x 2024-xx-xx xx:xx:xxOrtamınızın tam tanısı için şunu çalıştırın:
composer diagnoseBu komut PHP yapılandırmanızı, ağ bağlantınızı ve Composer ayarlarınızı kontrol ederek olası sorunları bildirir.
Adım 9: PHP Bağımlılıklarını Yönetmek için Composer Kullanma
Composer kurulduktan sonra, PHP projelerinizde bunu etkili bir şekilde nasıl kullanacağınız aşağıda açıklanmıştır.
9a. Yeni Bir Proje Başlatma
Proje dizininize gidin ve yeni bir Composer projesi başlatın:
cd /path/to/your/project
composer initİnteraktif sihirbaz sizden aşağıdakileri isteyecektir:
- Paket adı (örneğin,
yourname/project) - Açıklama
- Yazar bilgileri
- Minimum kararlılık
- Gerekli bağımlılıklar
Bu, projenizin bağımlılık yapılandırmasının kalbi olan composer.json dosyasını oluşturur.
9b. Paket Yükleme
Projenize bir kütüphane eklemek için require komutunu kullanın:
composer require vendor/package-nameGerçek dünya örnekleri:
# Install Guzzle HTTP client
composer require guzzlehttp/guzzle
# Install Carbon date library
composer require nesbot/carbon
# Install Monolog logging library
composer require monolog/monologComposer bağımlılıkları çözecek, paketleri vendor/ dizinine indirecek ve composer.json ile composer.lock dosyalarını güncelleyecektir.
9c. composer.json Dosyasından Tüm Bağımlılıkları Yükleme
Bir projeyi dağıtırken veya bir depoyu klonlarken, tüm bildirilen bağımlılıkları şu komutla yükleyin:
composer installÜretim ortamları için, yalnızca geliştirme paketlerini atlamak amacıyla --no-dev bayrağını kullanın:
composer install --no-dev --optimize-autoloader9d. Bağımlılıkları Güncelleme
Tüm paketleri en son izin verilen sürümlerine güncellemek için:
composer updateBelirli bir paketi güncellemek için:
composer update vendor/package-name9e. Otomatik Yükleme
Composer otomatik olarak bir yükleyici oluşturur. Bunu PHP giriş noktanızın en üstüne ekleyin:
<?php
require 'vendor/autoload.php';Bu tek satır, yüklü tüm paketlere ve composer.json dosyasında tanımladığınız özel ad alanlarına erişim sağlar.
Sorun Giderme Yaygın Sorunlar
| Sorun | Neden | Çözüm |
|---|---|---|
composer: command not found | İkili dosya $PATH içinde değil | Kurulum dizinini $PATH öğesine ekleyin ve shell’i yeniden yükleyin |
PHP Fatal error: Allowed memory size exhausted | PHP bellek sınırı çok düşük | php -d memory_limit=-1 /usr/local/bin/composer install komutunu çalıştırın |
SSL certificate problem | Eksik CA sertifikaları | ca-certificates paketini yükleyin veya PHP’nin openssl yapılandırmasını güncelleyin |
The requested PHP extension ... is missing | Gerekli uzantı devre dışı | Uzantıyı php.ini içinde etkinleştirin veya barındırıcınızla iletişime geçin |
/usr/local/bin üzerinde İzin reddedildi | Sudo erişimi yok | Composer’ı yerel olarak ~/bin içine Adım 7’de açıklandığı gibi yükleyin |
Composer’ı Güncel Tutmak
Composer, yerleşik bir kendi kendini güncelleme mekanizmasına sahiptir. En son sürüme sahip olduğunuzdan emin olmak için aşağıdaki komutu düzenli olarak çalıştırın:
composer self-updateGerekirse önceki sürüme geri dönmek için:
composer self-update --rollbackGüncel kalmak, en son güvenlik yamaları, hata düzeltmeleri ve performans iyileştirmelerinden yararlanmanızı sağlar.
PHP Geliştirme için Doğru Hosting Ortamını Seçmek
Seçtiğiniz hosting ortamı, Composer gibi araçları etkili bir şekilde kullanma yeteneğinizi önemli ölçüde etkiler.
- Paylaşımlı Web Hosting — Daha küçük PHP projeleri için uygun. SSH erişimi mevcuttur, ancak sistem düzeyinde değişiklikler kısıtlıdır. Composer, ev dizininizde yerel olarak kurulabilir.
- VPS Hosting — Çoğu PHP geliştirici için ideal. Tam root erişimi, global Composer kurulumunu, özel PHP konfigürasyonlarını ve yığın üzerinde tam kontrolü sağlar.
- cPanel ile VPS — VPS’nin gücünü grafik kontrol panelinin kolaylığıyla birleştirerek PHP ve Composer yönetimini daha da erişilebilir hale getirir.
- Dedicated Servers — Maksimum performans, izolasyon ve kaynak kullanılabilirliği gerektiren yüksek trafikli PHP uygulamaları için en iyisi.
Hosting’inizi, PHP uygulamalarınızı ve API uç noktalarınızı üretimde güvenli hale getirmek için uygun bir SSL Certificate ile eşleştirin.
Sonuç
PHP Composer’ı sanal veya paylaşımlı barındırma ortamına yüklemek, PHP geliştirme iş akışınızı önemli ölçüde iyileştiren basit bir işlemdir. Bu kılavuzu takip ederek şunları başardınız:
- ✅ SSH aracılığıyla sunucunuza bağlandınız
- ✅ PHP kullanılabilirliğini ve gerekli uzantıları doğruladınız
- ✅ Composer yükleyicisini indirdiniz ve şifreleme açısından doğruladınız
- ✅ Erişim seviyenize bağlı olarak Composer’ı global veya yerel olarak yüklediniz
- ✅ Projeleri başlatmayı, paketleri yüklemeyi ve bağımlılıkları yönetmeyi öğrendiniz
Composer sadece bir kolaylık değildir — profesyonel bir standarttır. Bunu güncel tutmak ve projeleriniz arasında tutarlı bir şekilde kullanmak, PHP uygulamalarınızın güvenli, bakımlanabilir ve ölçeklenebilir kalmasını sağlar.
Paylaşımlı Web Barındırma‘da küçük bir site çalıştırıyor olsanız veya Dedicated Server‘da karmaşık bir uygulama çalıştırıyor olsanız, AlexHost, Composer ile etkili bir şekilde çalışmak için ihtiyaç duyduğunuz altyapı ve SSH özellikli ortamları sağlar.
tasarruf edin