GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya bisa mengetahui mengapa php5-fpm saya gagal memulai?

Solusi 1:

Apakah Anda memeriksa log_kesalahan Anda untuk php-fpm ? Lokasi file tersebut harus dideklarasikan di php-fpm.conf Anda (dalam konfigurasi Ubuntu adalah /etc/php5/fpm/php-fpm.conf, file log adalah /var/log/php5-fpm/log), periksa juga log_level Anda , jika dinonaktifkan (;log_level), harap aktifkan dan ubah ke debug . Setelah itu coba mulai ulang layanan php5-fpm dan periksa log Anda.

Anda juga dapat mencoba menjalankan php5-fpm dalam mode latar depan:

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

Mungkin ini menunjukkan sesuatu yang menarik.

Solusi 2:

Prosedur pemecahan masalah standar:

  • Periksa berkas log. Jika Anda tidak tahu di mana letaknya, periksa konfigurasi atau untuk mencari tahu dengan pasti, temukan pid dengan ps aux | grep php-fpm , lalu lakukan lsof -p $PID | grep log (hilangkan grep jika tidak menunjukkan apa-apa).
  • 99% dari file log waktu akan menunjukkan penyebabnya. Jika tidak, cari level logging di konfigurasi, naikkan dan coba lagi.
  • Mungkin langsung berhenti dan Anda tidak bisa meminta PID untuk memeriksa prosesnya. Anda juga dapat mencoba memulai proses di latar depan, tetapi ini berarti mencari tahu sakelar baris perintah mana yang perlu Anda gunakan. Biasanya Anda hanya perlu mengarahkannya ke konfigurasi yang ada.
  • Jika tidak ada file log atau stdout/stderr (output latar depan) yang berisi petunjuk apa pun, saatnya untuk strace... tapi itu postingan lain.

Solusi 3:

Catatan ini membantu saya:https://bugs.launchpad.net/nginx/+bug/1366651

Dalam kasus saya, memperbarui ke nginx> 1.6.1 parameter yang diteruskan ke php5-fpm terletak di fastcgi.conf alih-alih di fastcgi_params, menghasilkan PHP yang selalu mengembalikan 200 (ok), tetapi tidak pernah konten apa pun, karena SCRIPT_FILENAME tidak disetel lagi.

Saya harap ini juga membantu orang lain.

Solusi 4:

Bagi saya, masalahnya adalah php-fpm.conf saya file tidak menggunakan nama file konfigurasi default - bernama /etc/php5/fpm/php5-fpm.conf ( php5-fpm.conf vs 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

Saya mengganti nama file conf menjadi php-fpm.conf dan itu memperbaiki masalah.

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 ]

Linux
  1. Bagaimana cara mengetahui proses apa yang mengunci file di Linux?

  2. Bagaimana saya bisa menghubungkan file di Linux?

  3. Di mana file header <conio.h> di Linux? Mengapa saya tidak dapat menemukan <conio.h>?

  1. Bagaimana cara mengetahui proses mana yang menggunakan file di Linux?

  2. Bagaimana saya bisa mengetahui apakah sistem Linux menggunakan Wayland atau X11?

  3. Cara mengetahui versi paket mana yang dapat saya instal di APT

  1. Bagaimana saya bisa menemukan file terlama di pohon direktori

  2. Bagaimana saya bisa mengetahui berapa lama waktu yang dibutuhkan untuk mengeksekusi pekerjaan slurm saya?

  3. Bagaimana saya bisa mengetahui di mana file secara fisik berada di disk (nomor blok)?