iToverDose/Yazılım· 1 HAZIRAN 2026 · 04:05

Hostinger’da PHP Versiyon Uyuşmazlığını Nasıl Düzeltirim? Adım Adım Kılavuz

Hostinger paylaşımlı barındırma hesabınızda PHP versiyon uyuşmazlığını yaşadınız mı? Laravel kurulumu sırasında karşılaşılan bu sorunu çözmek için uyguladığınız adımları ve kalıcı çözümü keşfedin.

DEV Community3 dk okuma0 Yorumlar

Paylaşımlı barındırma hizmetlerinde projelerinizi yayınlamak heyecan verici olabilir — ta ki PHP versiyonuyla ilgili bir hata mesajıyla karşılaşana kadar. Laravel 13 kullanırken Hostinger sunucusunda PHP 8.2 çalışıyor ve composer install komutu hata veriyorsa, bu durum sizi uzun saatler boyunca çözüm aramaya itebilir. Neyse ki, sorun aslında basit bir $PATH ayarıyla çözülebilir. İşte nasıl olduğunu adım adım açıklıyoruz.

Hostinger’da PHP Versiyonunun Nasıl Belirlendiğini Anlamak

Hostinger’in hPanel arayüzünde PHP versiyonunu değiştirmek oldukça basittir. Hosting → Yönet → PHP Yönetimi bölümünden istediğiniz PHP versiyonunu (örneğin PHP 8.3) seçebilirsiniz. Bu ayar, web sunucusunun (Nginx/Apache + PHP-FPM) hangi PHP versiyonunu kullanacağını belirler — yani web sitenizin tarayıcıdan erişilen kısmı için PHP versiyonunu kontrol eder.

Ancak SSH terminalinizde çalıştırdığınız komutlar (örneğin php -v ya da composer install) farklı bir PHP versiyonunu kullanabilir. Bu durum, özellikle projenizin composer.json dosyasında PHP versiyon gereksinimleri (örneğin "php": "^8.3") yer alıyorsa ciddi sorunlara yol açar. Çünkü composer install komutu, yerel makinenizdeki PHP versiyonuna değil, SSH oturumunuzda tanımlı olan $PATH değişkenine göre PHP komutunu çalıştırır.

İlk Denemeler: Neden İşe Yaramadı?

Birçok geliştirici, sorunu çözmek için ilk olarak aşağıdaki yöntemleri deniyor:

  • `composer update` komutu: Bu komut, bağımlılıklarınızı güncellemeye çalışır, ancak composer.json dosyanızın PHP versiyon gereksinimlerini karşılamadığınızda hata verir. Örneğin:
composer update

Komut, "php": "^8.3" gereksinimini karşılayamayan sunucuda çalışmaz.

  • `composer install --ignore-platform-reqs` komutu: Bu komut, platform gereksinimlerini (örneğin PHP versiyonunu) yok sayar ve bağımlılıkları zorla kurar. Ancak bu geçici bir çözümdür ve uygulamada çalışma zamanı hatalarına neden olabilir. Örneğin, PHP 8.3’e özel özellikler kullanan paketler, uyumsuz PHP versiyonunda düzgün çalışmayabilir.
  • hPanel’de PHP versiyonunu değiştirmek: Yukarıda belirtildiği gibi, bu ayar sadece web sunucusunu etkiler. SSH terminalindeki PHP versiyonunu değiştirmez.

Bu yaklaşımların hiçbiri kalıcı bir çözüm sunmaz ve sorunun kökenini gözden kaçırır: SSH oturumunda hangi PHP versiyonunun kullanıldığı.

Kalıcı Çözüm: $PATH Değişkenini Düzenlemek

Hostinger, farklı PHP versiyonlarını /opt/alt/ dizini altında ayrı klasörlerde saklar. Örneğin:

ls /opt/alt/
# Çıktı: php74  php80  php81  php82  php83  php85

SSH terminalinizde php -v komutunu çalıştırdığınızda, sistem varsayılan olarak /usr/bin/php yolunu kullanır — bu genellikle Hostinger’in varsayılan PHP versiyonudur (örneğin PHP 8.2). Ancak projeniz PHP 8.3 gerektiriyorsa, bu uyuşmazlık composer install komutunun başarısız olmasına neden olur.

Adım 1: Mevcut PHP versiyonunu kontrol edin

php -v
# Örnek çıktı: PHP 8.2.30 (cli) (built: ...)

Bu çıktı, SSH terminalinizin hangi PHP versiyonunu kullandığını gösterir.

Adım 2: İstenilen PHP versiyonunun yolunu $PATH değişkenine ekleyin

Hostinger’in /opt/alt/php85/usr/bin/ yolunda PHP 8.5 yer alır. Bu yolu $PATH değişkeninin en başına ekleyerek, sistemin php komutunu bu konumdan bulmasını sağlayabilirsiniz. Örneğin:

export PATH="/opt/alt/php85/usr/bin:$PATH"

Ardından PHP versiyonunu tekrar kontrol edin:

php -v
# Örnek çıktı: PHP 8.5.0 (cli) (built: ...)

Artık composer install komutu düzgün çalışmalıdır:

composer install

Adım 3: $PATH ayarını kalıcı hale getirin

Yukarıdaki export komutu, yalnızca mevcut SSH oturumunuz için geçerlidir. Bu ayarı kalıcı hale getirmek için shell profil dosyanıza ekleyin. Örneğin, Bash kullanıyorsanız:

echo 'export PATH="/opt/alt/php85/usr/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Eğer Zsh kullanıyorsanız:

echo 'export PATH="/opt/alt/php85/usr/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

Artık her yeni SSH oturumunuzda PHP versiyonu otomatik olarak doğru şekilde ayarlanacaktır.

Bu Çözümün Arkasındaki Mantık

Hostinger’in paylaşımlı barındırma hizmetlerinde birçok kullanıcı farklı PHP versiyon gereksinimlerine sahip olabilir. Bu nedenle, sistem /opt/alt/ dizini altında her PHP versiyonunu ayrı klasörlerde saklar. hPanel’de yaptığınız PHP versiyonu seçimi, web sunucusunun hangi PHP versiyonunu kullanacağını belirler — ancak SSH terminalinizin $PATH değişkeni, sistemin hangi PHP versiyonunu varsayılan olarak kullanacağını kontrol eder.

$PATH değişkenine /opt/alt/phpXX/usr/bin yolunu eklemek, sistemin php komutunu bu konumdan bulmasını sağlar. Bu sayede, composer install ve composer update komutları doğru PHP versiyonunu kullanarak çalışır ve platform gereksinimlerini karşılar.

Özet: Hızlı Çözüm Adımları

Aşağıdaki adımları izleyerek PHP versiyon uyuşmazlığını hızlıca çözebilirsiniz:

  • hPanel’de PHP versiyonunu değiştirin: Web sunucusu için doğru versiyonu seçin.
  • `composer install --ignore-platform-reqs` kullanmayın: Bu geçici bir çözümdür ve risklidir.
  • `/opt/alt/phpXX/usr/bin` yolunu `$PATH` değişkenine ekleyin: SSH terminalinde doğru PHP versiyonunu kullanın.
  • `export` komutunu kalıcı hale getirin: .bashrc ya da .zshrc dosyanıza ekleyin.

Son Sözler

Hostinger gibi paylaşımlı barındırma hizmetlerinde PHP versiyon uyuşmazlıkları, projelerinizin yayınlanmasını geciktirebilir. hPanel ve SSH terminali arasındaki bu ayrım, birçok geliştiricinin karşılaştığı yaygın bir sorundur. Yukarıda açıkladığımız $PATH düzenleme yöntemi, bu sorunu kalıcı ve güvenilir bir şekilde çözmenizi sağlar.

Eğer Laravel gibi modern framework’ler kullanıyorsanız, PHP versiyon gereksinimlerine dikkat etmek önemlidir. Doğru versiyonu kullanmak, uygulamalarınızın stabil çalışmasını ve gelecekteki güncellemelerin sorunsuz şekilde yapılmasını sağlar. Umarız bu rehber, sizin için de faydalı olmuştur ve projelerinizin yayın sürecini kolaylaştırır.

Yapay zeka özeti

Hostinger paylaşımlı barındırmada PHP versiyon uyuşmazlığı yaşadınız mı? Laravel projelerinde karşılaşılan bu sorunu çözmek için gereken adımları ve kalıcı düzeltmeyi öğrenin. Hızlı ve güvenilir yöntemler.

Yorumlar

00
YORUM BIRAK
ID #J1JZ7D

0 / 1200 KARAKTER

İnsan doğrulaması

6 + 6 = ?

Editör onayı sonrası yayına girer

Moderasyon · Spam koruması aktif

Henüz onaylı yorum yok. İlk yorumu sen bırak.