cPanel için biraz geç kalınmış bir yazı olsa da easyapache3 kullanımına devam edenler için güzel bir makale diyebilirim. cPanel üzerinde bir çok php ile yapılmış web sitesi barındırırken karşımıza çıkan eski uygulamaların, sunucuda kurduğumuz php sürümünden eski bir sürüm gerektirmesi biraz can sıkabiliyor. Bunun için cloudlinux ile güzel çözümler sağlanabiliyor ancak burada ücretsiz olarak müşterilerinizin cpanel üzerinden php versiyonunu dizin bazlı seçmesini sağlayacak bir uygulamadan bahsedeceğiz.

Önemli !!! Bunu yazmadan geçmek istemiyorum !

Bu uygulamanın çalışması için fcgi, cgi modlarından vazgeçmeniz gerekiyor. Bunun yerine suphp kullanmanız gerekecek. Bunu kabul ediyorsanız kurulumu başlatabilirsiniz :)

Kurulumu aslında oldukça basit. Pek detaya girmeye gerek duymuyorum bu yüzden kurulum aşamalarına geçiyorum :)

Hadi başlayalım ;)


İlk olarak kurulum için gereken sh dosyamızı çekeceğimiz dizine girelim.

cd /usr/local/src



Sonrasında dosyamızı çekelim

wget -N https://nixtree.com/download/free/ntphpselector_manage.sh



Dosyamız sorunsuz indiyse kurulumu başlatıyoruz :) Kurulum biraz uzun sürecektir.

sh ntphpselector_manage.sh install

Kurulum tamamlandıktan sonra varsayılan php versiyonumuzun ne olması gerektiğine karar verip bu versiyonu mevcut kurulu modülleriniz üzerinden derlemesi için aşağıdaki komutu veriyoruz. sh ntphpselector_manage.sh recompile

-- option
2 for 5.2
3 for 5.3
4 for 5.4
5 for 5.5


Örnek olarak;
Ben php 5.2 üzerinden derleme yapmak istedim. Bu yüzden yukarıda 5.2 için tanımlanan option numarası olan 2 yazıyorum.

sh ntphpselector_manage.sh recompile 2



Kurulum tamamlandı :) cPanelde software kısmından erişip hosting içinde hangi klasörde hangi php versiyonu kullanılacaksa dizine tıklayıp versiyonu belirleyip kaydedin. Sonucu görmek için web sayfanızı yenileyebilirsiniz :)

Memnun kalmazsanız uygulamayı kaldırmak için aşağıdaki komutu uygulamanız yeterli.

cd /usr/local/src
sh ntphpselector_manage.sh uninstall



Olurda cPanelde butonu göremezseniz ulaşmak için aşağıdaki bağlantıyı kullanabilirsiniz. Siz koyu işaretlenmiş bölümü benim gösterdiğim gibi kendi panelinizin key kısmının önüne yapıştırmalısınız.

/cpsess5529641416/frontend/paper_lantern/ntphpselector/index.live.php



Burada nixtree php selector ile ilgili bazı bilgiler vermek istiyorum !

Nixtree kurulumunuzu yaptıktan sonra cpanel üzerindeki mevcut php ayarlarınızı yine sorunsuz yapabilirsiniz. Ancak phpselector ile versiyon tanımlaması yapılan herhangi bir dizinde bu yapılandırmanız geçersiz olacaktır. Nixtree ilk kurulumda mevcut php yapılandırmanızı kendi kurduğu php versiyonları için oluşturduğu php.ini dosyalarına geçirmektedir. Bu sebepten cpanel e ait php.ini dosyasında yapacağınız sonraki düzenlemeleri ya da cpanele değilde sadece nixtree ile versiyon tanımlaması yaptığınız dizinler için ilgili php.ini dosyalarınıza da aynı düzenlemeyi yapmanız gerekiyor.

  • Dizinlere ulaşmak için phpinfo() fonksiyonu ile ilgili dizine bir php dosyası atarak o anda o dizinin kullandığı php.ini dosyasını ve modül klasörlerini görebilirsiniz.
  • Bir süre kurulum yapıp kullanmaya başladıktan sonra apache derlemeniz durumunda versiyon tanımlaması yapılan dizinler için tekrar aynı işlemi yapmanız gerekiyor.

Bunun haricinde pecl ile kuracağınız php uzantılarını tanımlamada sorun yaşayabilirsiniz. Bu konuda biraz çaba sarf ettim ve işimin aciliyeti nedeniyle fazla uğraşmadan kurulumu kaldırıp tekrar kurdum sorunu giderdim :)

İyi çalışmalar...