Php5-fpm'imin neden başlatılamadığını nasıl öğrenebilirim?


10

Sunucuma ulaşmaya çalıştığımda 504 ağ geçidi zaman aşımı aldım, küçük bir kontrol php5-fpm günlüklerinde herhangi bir günlük bulamadı, ancak sadece emin olmak için yeniden başlatmayı denedim. yeniden başlatmaya çalıştığımda:

sudo service php5-fpm restart

anladım [fail] ama yaptığımda

sudo service php5-fpm stop
sudo service php5-fpm start

Hata almıyorum.

günlük yoksa nasıl araştırabilirim? Ne yapabilirim?

Yanıtlar:


17

Error_log dosyanızı php-fpm için kontrol ettiniz mi? Bu dosyanın konumu php-fpm.conf dosyasında bildirilmelidir (Ubuntu yapılandırmasında /etc/php5/fpm/php-fpm.conf, günlük dosyası / var / log / php5-fpm / log'dur ) log_level , devre dışı bırakılmışsa (; log_level), lütfen etkinleştirin ve hata ayıklama olarak değiştirin . Bundan sonra php5-fpm hizmetini yeniden başlatın ve günlüklerinizi kontrol edin.

Ayrıca php5-fpm'yi ön plan modunda çalıştırmayı deneyebilirsiniz:

# php5-fpm -y /etc/php5/fpm/php-fpm.conf

Belki bu size ilginç bir şey gösterir.


1
Benim durumumda, bu komut php5-fpm'ye başladı, oysa service php5-fpm startbaşlamadı. Teşekkürler!
David Thomas

Davis, benim için çalışıyor gibi görünüyor +1! Ama .. Jamzed bana çözüm verdi, +1 hata buldum! hepinize teşekkür ederim!
Tenaciousd93

FPM'yi bir uptart işi kullanarak başlatırsanız, php-fpm başlangıç ​​günlükleri / var / log / upstart /
Ashwin Tarih

Php7.0 kullanımı içinphp-fpm7.0 -F -c /etc/php/7.0/fpm/php-fpm.conf
Yadvendar

4

Standart sorun giderme prosedürü:

  • Günlük dosyasını kontrol edin. Yapılandırmanın nerede olduğunu bilmiyorsanız veya pid'i bulmak içinps aux | grep php-fpm , sonra lsof -p $PID | grep log(hiçbir şey göstermiyorsa grep'i atlayın).
  • Zaman günlüğü dosyalarının% 99'u size nedeni gösterecektir. Değilse, yapılandırmada bir kayıt düzeyi arayın, yükseltin ve tekrar deneyin.
  • Belki de anında kapanır ve PID'yi süreci inceleyemezsiniz. İşlemi ön planda başlatmayı da deneyebilirsiniz, ancak bu, hangi komut satırı anahtarlarını kullanmanız gerektiğini bulmak anlamına gelir. Genellikle mevcut yapılandırmanıza yönlendirmeniz yeterlidir.
  • Günlük dosyası veya stdout / stderr (ön plan çıktısı) içermiyorsa ipucu zamanı geldi ... ama bu başka bir gönderi.

Günlük dosyasını bulmak için +1 güzel bir yol!
deweydb

3

Bu not bana yardımcı oldu: https://bugs.launchpad.net/nginx/+bug/1366651

Benim durumumda, nginx> 1.6.1'e güncelleme php5-fpm'ye geçirilen parametrelerin fastcgi_params yerine fastcgi.conf içinde bulunması, her zaman 200 (ok) döndüren ancak hiçbir zaman içerik döndürmeyen bir PHP ile sonuçlanır. SCRIPT_FILENAME artık ayarlanmadı.

Umarım başka birine de yardımcı olur.


2

Benim için sorun, php-fpm.confdosyamın varsayılan yapılandırma dosya adını kullanmamasıydı - adlandırıldı /etc/php5/fpm/php5-fpm.conf( php5-fpm.confvs php-fpm.conf)

php5-fpm -t  

[26-Jul-2014 22:39:16] ERROR: failed to open configuration file '/etc/php5/fpm/php-fpm.conf': No such file or directory (2)
[26-Jul-2014 22:39:16] ERROR: failed to load configuration file '/etc/php5/fpm/php-fpm.conf'
[26-Jul-2014 22:39:16] ERROR: FPM initialization failed

Conf dosyasını yeniden adlandırdım php-fpm.confve bu sorunu çözdü.

sudo mv /etc/php5/fpm/php5-fpm.conf /etc/php5/fpm/php-fpm.conf
sudo service php5-fpm restart
 * Restarting PHP5 FastCGI Process Manager php5-fpm                                                                           [ OK ]

0

Ben hiçbir günlük dosyaları bu sorun yaşadı ve sonra HTTP yerine HTTPS üzerinden URL erişiyordu ve bu protokol Nginx ayarlanmamıştı ki PHP5-FPM trafik alamadım fark ettim.

Birine yardım edebilir.


0

Bir Ubuntu dağıtımında php5-fpm paketi kaldırılabilir, çünkü php 7 bunun yerine php-fpm kullanır. bunu konsolda çalıştırmayı deneyin:

php5-fpm

Eğer yoksa, muhtemelen php 7'yi zaten kullanıyorsunuz, bu yüzden yükleyin

apt-get install php-fpm

php7 sürümünü yükleyecek

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.