Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Bagaimana untuk menyelesaikan kegagalan permulaan linux php7-fpm

Bagaimana untuk menyelesaikan kegagalan permulaan linux php7-fpm

WBOY
WBOYke hadapan
2023-05-13 22:40:092094semak imbas

Penyelesaian kepada kegagalan permulaan php7-fpm Linux: 1. Ubah suai item "error_log" dalam fail "php-fpm.conf" 2. Ubah suai lokasi fail konfigurasi php; , ubah suai nginx kepada nama pengguna sistem semasa 4. Buat pengguna dan kumpulan pengguna nginx secara langsung.

Penyelesaian kepada kegagalan permulaan php-fpm (selepas memasang PHP pada centOS)

Selepas menyusun dan memasang php7.2.1 pada centOS7.0, kerana yang baharu php, jadi anda perlu memulakan semula php-fpm; tersedia. Anda perlu membuat cp satu demi satu dan kemudian memulakannya Jika tiada ralat, anda tidak perlu membaca "2. php-fpm startup error:"

1. fpm

cp php.ini-development /usr/local/php7/etc/php.ini
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf

2. 🎜>

Mulakan php-fpm:

/usr/local/php/sbin/php-fpm

2. ralat permulaan php-fpm:

Punca dan penyelesaian:

1. Jalankan terus dan ketahui jika terdapat ralat Tidak dapat mencari fail konfigurasi.

$ php-fpm

[11-Jan-2014 16:03:03] ERROR: failed to open configuration file '/private/etc/php-fpm.conf': No such file or directory (2)
[11-Jan-2014 16:03:03] ERROR: failed to load configuration file '/private/etc/php-fpm.conf'
[11-Jan-2014 16:03:03] ERROR: FPM initialization failed

Anda boleh menjana fail konfigurasi dalam direktori /private/etc/, yang memerlukan kebenaran root (sudo)

Atau letakkan fail konfigurasi dalam direktori dengan kebenaran untuk pengguna biasa, lulus --fpm- Parameter konfigurasi menentukan lokasi fail konfigurasi, seperti berikut:

# cp /private/etc/php-fpm.conf.default /etc/php-fpm.conf
$ php-fpm --fpm-config /etc/php-fpm.conf
[11-Jan-2014 16:10:49] ERROR: failed to open error_log (/usr/var/log/php-fpm.log): No such file or directory (2)
[11-Jan-2014 16:10:49] ERROR: failed to post process the configuration
[11-Jan-2014 16:10:49] ERROR: FPM initialization failed

Mesej ralat memaparkan: Fail "log" tidak boleh dibuka dengan betul Sebabnya ia berfungsi dalam /usr /var direktori secara lalai. Anda boleh mengubah suai fail konfigurasi untuk menentukan log yang betul

$ vim /usr/local/etc/php-fpm.conf

Ubah suai item error_log dalam fail php-fpm.conf. Awalan lalai ialah /usr/var , tetapi tiada laluan sedemikian

error_log = /usr/local/var/log/php-fpm.log
pid = /usr/local/var/run/php-fpm.pid

atau jangan ubah suai item konfigurasi dalam fail konfigurasi, dalam parameter berjalan php-fpm (-p), nyatakan awalan laluan relatif

$ php-fpm --fpm-config /php-fpm.conf  --prefix /usr/local/var
.

di mana fail runtime diletakkan Pada ketika ini, daemon php-fpm pada asasnya boleh dimulakan dengan betul.

Mesej ralat:

[12-Jul-2013 17:18:57] ERROR: [/usr/local/php5/etc/php-fpm.conf:144] value is NULL for a ZEND_INI_PARSER_ENTRY
[12-Jul-2013 17:18:57] ERROR: failed to load configuration file '/usr/local/php5/etc/php-fpm.conf'
[12-Jul-2013 17:18:57] ERROR: FPM initialization failed

2. Punca utama ralat ialah /usr/local/php5/sbin/php-fpm ralat konfigurasi, sila semak dengan teliti. Kesilapan saya ialah tanda = hilang di sini dalam kumpulan = www. Jadi ada masalah

[root@localhost ~]# /usr/local/php5/sbin/php-fpm
PHP:  syntax error, unexpected TC_STRING in /usr/local/php5/etc/php.ini on line 211

3 Apabila memulakan php-fpm, ralat ERROR: [pool www] tidak boleh mendapatkan uid untuk pengguna 'nginx'

Kaedah 1:

Apabila php7 disusun Kemudian gunakan arahan berikut untuk memulakan

dan kemudian laporkan ralat ini:

/usr/local/php/sbin/php-fpm
<code><pre class="brush:php;toolbar:false">[07-Dec-2018 17:59:31] ERROR: [pool www] cannot get uid for user &amp;#39;nginx&amp;#39; [07-Dec-2018 17:59:31] ERROR: FPM initialization failed</pre>Ubah suai lokasi fail konfigurasi php di www .conf
vi /usr/local/php/etc/php-fpm.d/www.conf

Tukar nginx kepada nama pengguna sistem semasa seperti berikut:

; Unix user/group of processes
 ; Note: The user is mandatory. If the group is not set, the default user&#39;s group
 ;       will be used.
 user = www.emam.cn
 group = www.emam.cn

Kaedah 2:

Buat pengguna nginx dan kumpulan pengguna secara langsung

useradd nginx
groupadd nginx
usermod -G nginx nginx

3. Sambungan kandungan php-fpm

Mulakan php-fpm:

php 5.3.3 dan kemudian php-fpm tidak lagi sokong php-fpm yang sebelum ini tersedia/ usr/local/php/sbin/php-fpm (start|stop|reload) dan arahan lain, jadi jangan lihat perintah lama ini lagi Anda perlu menggunakan kawalan isyarat :

<code><pre class="brush:php;toolbar:false">/usr/local/php/sbin/php-fpm</pre>Proses induk boleh memahami isyarat berikut

INT, TERM Tamat serta-merta

BERHENTI Tamatkan dengan anggun

USR1 Buka semula fail log

USR2 Muat semula semua proses pekerja dan muat semula konfigurasi dan modul binari dengan anggun

Kaedah mulakan semula yang mudah dan terus:

Semak nombor proses induk php-fpm dahulu

# ps aux|grep php-fpm
root     21891  0.0  0.0 112660   960 pts/3    R+   16:18   0:00 grep --color=auto php-fpm
root     42891  0.0  0.1 182796  1220 ?        Ss   4月18   0:19 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
nobody   42892  0.0  0.6 183000  6516 ?        S    4月18   0:07 php-fpm: pool www
nobody   42893  0.0  0.6 183000  6508 ?        S    4月18   0:17 php-fpm: pool www

Mulakan semula php-fpm:

kill -USR2 42891

OK .

Penyelesaian di atas biasanya digunakan apabila fail php-fpm.pid tidak dijana Jika anda ingin menjana php-fpm.pid, gunakan penyelesaian berikut:

Anda boleh melihat. proses induk di atas, penting Fail konfigurasi /usr/local/php/etc/php-fpm.conf digunakan Cat /usr/local/php/etc/php-fpm.conf ditemui:

[global]
; Pid file
; Note: the default prefix is /usr/local/php/var
; Default Value: none
;pid = run/php-fpm.pid

pid. laluan fail harus terletak di /usr/local/php/var/run/php-fpm.pid, kerana ia telah diulas, ia tidak dijana Kami mengalih keluar ulasan, kemudian membunuh -USR2 42891 dan mulakan semula php-fpm, fail pid akan dijana. Ia akan OK pada masa akan datang Gunakan arahan berikut untuk memulakan semula dan menutup php-fpm:

php-fpm Close:

kill -INT &#39;cat /usr/local/php/var/run/php-fpm.pid&#39;

php-fpm Restart:

rreeee

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan kegagalan permulaan linux php7-fpm. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam