Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi
cPanel hesabında Composer kullanmak için SSH veya Terminal erişimi, uygun bir PHP CLI ve Composer çalıştırıcısı gerekir. Paketlerin projeye kurulmasıyla Composer programının sunucuya kurulması ayrı işlemlerdir. Önce command -v composer ve composer --version ile mevcut kurulumu kontrol edin; kullanılabilir bir kurulum varsa aynı programın ikinci kopyasını gereksiz yere oluşturmayın.

cPanel’in eski kurulumlarında Composer hazır bulunabilir. Güncel sunucularda manuel kurulum gerekebilir; cPanel belgesi de Composer’ın kendi resmî kurulum yöntemine yönlendirir. Yalnız bir hesap için kullanacaksanız root yetkisiyle bütün sunucuya kurmak zorunda değilsiniz. Aşağıdaki yöntem ilgili hesabın ana dizinini kullanır.

Önce PHP ortamını doğrulayın​

Terminalde php -v ve php --ini ile çalışan PHP’yi ve okuduğu ayar dosyasını görün. Web sitesinin PHP sürümüyle CLI sürümü farklı olabilir. EasyApache üzerindeki gerekli PHP modüllerini ve Composer’ın güncel sistem gereksinimlerini kontrol edin; yetkiniz yoksa sağlayıcıdan uygun CLI ve modül yapılandırmasını isteyin.

Kurulumu kendi cPanel kullanıcınızla ve web kökünün dışında yürütün. Bu örnek curl ile dosya indirir; curl ve PHP komutları erişilebilir olmalıdır. TLS doğrulamasını kapatarak indirme hatasını geçmeye çalışmayın.

Hesap düzeyinde doğrulanmış kurulum​

Aşağıdaki POSIX shell betiğini okuyup kendi hesabınızda çalıştırılacak bir dosyaya kaydedin. composer-kurulum yeni çalışma dizinidir; zaten varsa betik durur. bin/composer yolunda gerekli mevcut bir kurulum olmadığını önceden doğrulayın:

Kod:
#!/bin/sh
set -eu
mkdir "$HOME/composer-kurulum"
cd "$HOME/composer-kurulum"
mkdir -p "$HOME/bin"
curl -fsS https://composer.github.io/installer.sig -o installer.sig
curl -fsS https://getcomposer.org/installer -o composer-setup.php
EXPECTED_CHECKSUM="$(cat installer.sig)"
ACTUAL_CHECKSUM="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"
if [ -z "$EXPECTED_CHECKSUM" ] || [ "$EXPECTED_CHECKSUM" != "$ACTUAL_CHECKSUM" ]; then
    printf '%s\n' 'Yukleyici dogrulanamadi.' >&2
    exit 1
fi
php composer-setup.php --install-dir="$HOME/bin" --filename=composer
php "$HOME/bin/composer" --version

Beklenen sonuç, bütün indirmeler ve checksum kontrolü başarılı olduktan sonra Composer sürümünün görünmesidir. İnternetten kopyalanmış eski bir sabit hash yerine resmî güncel imza değeri kullanılır. Kontrol başarısızsa yükleyici çalıştırılmaz. Sürüm çıktısı, projenizin bütün paketlerinin uyumlu olduğunu henüz göstermez.

BelirtiÖnce kontrolSonraki işlem
php bulunamadıHesabın PHP CLI yoluDoğru çalıştırıcıyı sağlayıcıyla doğrulayın
Checksum uyuşmadıİndirme sonucu ve resmî imzaBetik durmalı; doğrulanmayan dosyayı çalıştırmayın
composer bulunamadıKurulum yolu ve PATHÖnce php ile tam dosya yolunu kullanın
Paket platform hatasıCLI PHP sürümü/modülleriProje gereksinimini karşılayan ortamı hazırlayın

Kurulumdan sonra proje kullanımı​

Önce php "$HOME/bin/composer" diagnose ile ortamı inceleyin. Ardından yalnız güvenilir projenizin composer.json dosyasının bulunduğu dizine geçin. Örneğin proje sürümü ve dağıtım planı doğrulandıysa şu komut kullanılabilir:

Kod:
php "$HOME/bin/composer" install --no-dev --optimize-autoloader

composer.lock varsa install kilitli sürümleri kullanır; yoksa bağımlılıklar çözülerek yeni kilit dosyası oluşabilir. Üretimde rastgele update çalıştırmakla install aynı şey değildir. Kurulum komutları projenin script ve plugin kodlarını çalıştırabilir; yalnız dosya sahipliği nedeniyle değil, yetki kapsamını sınırlamak için de proje işlemlerini root yerine hesap kullanıcısıyla yürütün.

PATH ayarı yapmadan tam yol kullanmak mümkündür. Sürüm ve diagnose başarılı olduktan sonra kısa composer komutu istiyorsanız hesabın PATH değerine bin dizinini eklemeyi değerlendirin. PHP yapılandırmasını bütün sunucuda rastgele değiştirmek veya web kökünü yükleyici dosyalarıyla doldurmak yerine kurulum ve proje dizinlerini ayrı tutun.

Sık sorulan sorular​

--no-dev bütün script ve plugin çalışmasını kapatır mı?​

Hayır. Bu seçenek geliştirme bağımlılıklarını atlar; script ve plugin çalışması ayrı seçeneklerle yönetilir. Güvenilmeyen bir projeyi yalnız no-dev ekleyerek güvenli saymayın. Bu örnek, güvendiğiniz ve gereksinimlerini kontrol ettiğiniz proje içindir.

SSH erişimim yoksa ne yapabilirim?​

Sağlayıcının Terminal/SSH veya belgelenmiş dağıtım desteğini öğrenin. Alternatif olarak uyumlu bir geliştirme/derleme ortamında kilitli bağımlılıkları hazırlayan bir dağıtım süreci kurulabilir. Web köküne herkese açık bir PHP yükleyici koymak, SSH eksikliğini güvenli biçimde çözmez.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.