Tüm barındırma hizmetlerinde 15% tasarruf edin

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın: Skills Başlayın
Bölüm
Linux Sanal Sunucular

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 derlemelercomposer.lock dosyası, 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 require ve include ifadelerini 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:

GereksinimAyrıntılar
Hosting erişimiHosting 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
İzinlerAna dizininize veya $PATH içindeki bir dizine yazma yeteneği
Terminal istemcisiTerminal (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.com

username 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.45

Kimlik doğrulaması yapıldıktan sonra, ana dizininize (genellikle /home/username/) yönlendirileceksiniz. Mevcut konumunuzu şu komutla doğrulayabilirsiniz:

pwd

Adı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 Technologies

PHP 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.php

Baş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.phar

Bir 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/composer

Shared 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/composer

Ardı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 --version

Beklenen çıktı:

Composer version 2.x.x 2024-xx-xx xx:xx:xx

Ortamınızın tam tanısı için şunu çalıştırın:

composer diagnose

Bu 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-name

Gerç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/monolog

Composer 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-autoloader

9d. Bağımlılıkları Güncelleme

Tüm paketleri en son izin verilen sürümlerine güncellemek için:

composer update

Belirli bir paketi güncellemek için:

composer update vendor/package-name

9e. 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

SorunNedenÇözüm
composer: command not foundİkili dosya $PATH içinde değilKurulum dizinini $PATH öğesine ekleyin ve shell’i yeniden yükleyin
PHP Fatal error: Allowed memory size exhaustedPHP bellek sınırı çok düşükphp -d memory_limit=-1 /usr/local/bin/composer install komutunu çalıştırın
SSL certificate problemEksik CA sertifikalarıca-certificates paketini yükleyin veya PHP’nin openssl yapılandırmasını güncelleyin
The requested PHP extension ... is missingGerekli 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 reddedildiSudo erişimi yokComposer’ı 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-update

Gerekirse önceki sürüme geri dönmek için:

composer self-update --rollback

Gü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:

  1. ✅ SSH aracılığıyla sunucunuza bağlandınız
  2. ✅ PHP kullanılabilirliğini ve gerekli uzantıları doğruladınız
  3. ✅ Composer yükleyicisini indirdiniz ve şifreleme açısından doğruladınız
  4. ✅ Erişim seviyenize bağlı olarak Composer’ı global veya yerel olarak yüklediniz
  5. ✅ 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.