Aynı kutuda (raylar gibi) çalışan birden çok PHP sürümü olması mümkün mü? İşte benim sorunum, yeni bir proje üzerinde geliştirmeye başlamalıyım ve bunun için en son Zend çerçevesini ve aktif kaydı kullanabilmem için PHP 5.3 kullanmayı planlıyordum.
Ancak, uygulamanızı barındırmam gereken makinede PHP 4.4 var ve orada barındırılan başka uygulamalar da var. PHP versiyonunu yükseltmek istemiyorum, geçmişte olduğu gibi PHP versiyonunu yükseltirken ve kullanımdan kaldırılmış fonksiyonlarla karşılaştım.
Aynı kutuda PHP'nin birden çok sürümüne sahip olup olmadığınızı merak ettim ve bir şekilde uygulamanızı yüklemek istediğiniz sürümü belirtin (raylara benzer)Aynı kutu üzerinde birden fazla PHP sürümü
cevap
Evet, bu mümkün. Aslında, birçok sunucu bu şekilde çalışır. Zaman zaman .php4 ve .php5 uzantılarını, belirli bir betiğin hangi sürümle ele alınması gerektiğini belirten görebilirsiniz.
ServerFault bir olasılıkları bir Apache modülü olarak PHP bir versiyonunu kullanarak bu sorunu
ve bir CGI olarak diğer versiyonu ele; ama bir fikir ben tür iyidir gibi olması: Apache
- Çeşitli farklı örneklerini
- port 44000 üzerinde örneğin farklı bir port (PHP 4.4 üzerindeki her bir dinleme ve PHP 5.3.1 Eğer her istediğiniz her şeyi değiştirebilir/yapılandırabilir
- ve birbirinden independantly çalışır
Bu şekilde, tamamen farklı çevrelere sahip PHP farklı bir sürümünü kullanarak her biri, ve bağlantı noktası 53100) üzerinde risk almadan çevre Diğerlerinden herhangi birini arıyor.
(Ve URL'lerinizdeki noktası numaralarını olmasını istemiyorsanız, sana farklı Apache durumlarda önünde bir vekil koyabilirsiniz varsayalım, yüzden sadece bir tane görünüyor)
Sen Docker kullanarak aynı kutuda birden çok PHP sürümünü çalıştırabilir.
Bir örnek komut olacaktır:
sudo docker run -d -p 8055:80 -v /var/www:/var/www \
-v /etc/apache2/sites-available:/etc/apache2/sites-available \
-v /etc/apache2/sites-enabled:/etc/apache2/sites-enabled \
codeyourdream/apache-sendmail-php55
İşte bu komut yaptığı da budur:
- O iletir senin yerel Docker kabın karşılık gelen klasörlere
/var/www
,/etc/apache2/sites-available
ve/etc/apache2/sites-enabled
. Yerel web siteleriniz ve/veya apache yapılandırmanız farklı klasörlerde bulunuyorsa,-v
değerinin ilk bölümünü değiştirin. I.e. biçimi şöyledir:docker run -v /host/directory:/container/directory -other -options image_name command_to_run
- Bu Docker konteyner limanına 80 için yerel makinenin portu 8055 iletir O "codeyourdream/apache-sendmail-php55" görüntü
Eğer kaçarsan gelen kabı çalışır
Bu komut, tüm yerel web siteleriniz 8055 numaralı bağlantı noktası üzerinden (yani http://localsite:8055 gibi URL'ler aracılığıyla) ve PHP 5 tarafından işlenmelidir.Daha fazla bilgi için https://codeyourdream.com/blog/how-run-multiple-php-versions-apache-one-linux-machine-using-docker numaralı telefona bakın. Bağlılık notu: Bu, ekibimin blogu.- 1. NodeJS - birden fazla nesne birden fazla dosya üzerinde aynı ad
- 2. PHP rastgele sayılarla aynı işlevi birden fazla kez çalıştırmak sorgu
- 3. birden cronjob aynı php dosyası
- 4. Aynı eylemi birden fazla sprite üzerinde mi kullanıyorsunuz?
- 5. PHP Birden Fazla Kıvrılma İsteği
- 6. Aynı projede birden fazla tercüman peki mi?
- 7. Seaborn'da aynı arsada birden fazla grafik
- 8. $ kapsamı üzerinde birden fazla etkinlik dinleyin
- 9. Google harita üzerinde birden fazla rota görüntüleme
- 10. Bir DataTable üzerinde birden fazla BindingSources kullanma
- 11. HTML5'te aynı sesi aynı anda birden fazla oynatabilir miyim?
- 12. Aynı grafikte birden fazla kutuyu R'ye nasıl yerleştiririm?
- 13. gitosis: aynı kullanıcı birden fazla makine
- 14. Mockito: aynı yönteme birden fazla çağrı
- 15. Aynı estetik için birden fazla gösterge
- 16. Aynı anda birden fazla R-betiği çalıştırın
- 17. Ant: birden fazla yerde aynı fileset kopya -
- 18. Birden fazla marka aynı konumdaki konumunuzu göster
- 19. Mongoose Aynı anda birden fazla veri silme
- 20. Doctrine2/Symfony2 - Aynı tablodaki birden fazla varlık
- 21. Aynı yerde birden fazla işaretleyici - MarkerClusterer
- 22. Aynı reaksiyon bileşeninin birden fazla örneği
- 23. Birden fazla aynı Kafka Streams konularının birleştirilmesi
- 24. Erlang: Aynı modülde tanımlanan birden fazla davranış?
- 25. Satırları aynı değerlerle birden fazla sütunda bulma
- 26. Java: aynı sınıftaki birden fazla ActionListeners?
- 27. Aynı veri kaynağına sahip birden çok açılan kutu nasıl ayarlayabilirim?
- 28. Bir tabloyu birden fazla sayfa üzerinde genişletme
- 29. Wix RegistrySearch üzerinde Birden fazla yerde arama
- 30. Neden Aynı anahtar kelimeyle birden fazla sütunu aynı anda güncelleyemiyorum?
Bu, sunucu hatası için bir soru gibi görünüyor ... – Myles