nginx php-fpm

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
DeNn
мл. сержант
Сообщения: 92
Зарегистрирован: 2007-07-18 11:25:53

nginx php-fpm

Непрочитанное сообщение DeNn » 2008-10-22 10:58:48

Сообственно сабж.
С нгинксом все ок, а вот как заставить стартовать php-fpm с запуском системы? в /usr/local/etc/rc.d/php-fpm есть файл. В cat /etc/rc.conf

Код: Выделить всё

php_fpm_enable="YES"
В логах ничего не пишет.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

MAK
ст. сержант
Сообщения: 344
Зарегистрирован: 2008-09-17 2:23:21

Re: nginx php-fpm

Непрочитанное сообщение MAK » 2008-10-22 11:15:28

как ставил php_fpm?
скрипт /usr/local/etc/rc.d/php-fpm в студию.
ручками стартует?

Аватара пользователя
DeNn
мл. сержант
Сообщения: 92
Зарегистрирован: 2007-07-18 11:25:53

Re: nginx php-fpm

Непрочитанное сообщение DeNn » 2008-10-22 12:48:55

Ставил из порта http://php-fpm.anight.org/downloads/freebsd-port/
Вот скрипт:

Код: Выделить всё

%cat /usr/local/etc/rc.d/php-fpm
#!/bin/sh

# PROVIDE: php-fpm
# REQUIRE: NETWORKING SERVERS
# KEYWORD: shutdown

# Add the following lines to /etc/rc.conf to enable php-fpm:
# php_fpm_enable (bool):      Set to "NO" by default.
#                             Set it to "YES" to enable php-fpm
# php_fpm_config (str):       Set to "" by default.
#                             Define your php-fpm configuration file here.

. /etc/rc.subr

name="php_fpm"
rcvar=`set_rcvar`

load_rc_config $name

: ${php_fpm_enable="NO"}
: ${php_fpm_pidfile="/var/run/php-fpm.pid"}
: ${php_fpm_config="/usr/local/etc/php-fpm.conf"}
: ${php_fpm_flags="--fpm"}

command="/usr/local/bin/php-cgi"
pidfile=${php_fpm_pidfile}
reload_precmd="php_fpm_prereload"
quit_cmd="php_fpm_quit"

[ -n "$php_fpm_config" ] && php_fpm_flags="$php_fpm_flags --fpm-config $php_fpm_config"

php_fpm_prereload()
{
        sig_reload=USR2
}

php_fpm_quit()
{
        sig_stop=QUIT
        run_rc_command stop
}

extra_commands="reload quit"
run_rc_command "$1"
Стартует, только если запускать не из-под рута.

MAK
ст. сержант
Сообщения: 344
Зарегистрирован: 2008-09-17 2:23:21

Re: nginx php-fpm

Непрочитанное сообщение MAK » 2008-10-22 16:11:29

DeNn писал(а):Стартует, только если запускать не из-под рута.
это что-то невероятное! Показуйте конфиг, вывод команд, логи.

Свеже-установленный php-fpm, в конфиге поставил пользователя/группу
под рутом

Код: Выделить всё

mak.mamapapa:/root >/usr/local/etc/rc.d/php-fpm start
Starting php_fpm.
mak.mamapapa:/root >ps ax | grep php
48219  ??  Ss     0:00.01 /usr/local/bin/php-cgi --fpm --fpm-config /usr/local/etc/php-fpm.conf
48220  ??  S      0:00.00 /usr/local/bin/php-cgi --fpm --fpm-config /usr/local/etc/php-fpm.conf
48221  ??  S      0:00.00 /usr/local/bin/php-cgi --fpm --fpm-config /usr/local/etc/php-fpm.conf
48222  ??  S      0:00.00 /usr/local/bin/php-cgi --fpm --fpm-config /usr/local/etc/php-fpm.conf
48223  ??  S      0:00.00 /usr/local/bin/php-cgi --fpm --fpm-config /usr/local/etc/php-fpm.conf
48224  ??  S      0:00.00 /usr/local/bin/php-cgi --fpm --fpm-config /usr/local/etc/php-fpm.conf
mak.mamapapa:/root >/usr/local/etc/rc.d/php-fpm stop
Stopping php_fpm.
Waiting for PIDS: 48219.
mak.mamapapa:/root >ps ax | grep php
mak.mamapapa:/root >
под не-рутом

Код: Выделить всё

mak.mamapapa:/home/mak >/usr/local/etc/rc.d/php-fpm start
Starting php_fpm.
Oct 22 17:08:49.893335 [ERROR] fpm_stdio_open_error_log(), line 257: open("/var/log/php-fpm.log") failed: Permission denied (13)
mak.mamapapa:/home/mak >ps ax | grep php
mak.mamapapa:/home/mak >

MAK
ст. сержант
Сообщения: 344
Зарегистрирован: 2008-09-17 2:23:21

Re: nginx php-fpm

Непрочитанное сообщение MAK » 2008-10-22 16:13:22

зы. вам че-то на highload-php-ru ответили. помогло?

Аватара пользователя
DeNn
мл. сержант
Сообщения: 92
Зарегистрирован: 2007-07-18 11:25:53

Re: nginx php-fpm

Непрочитанное сообщение DeNn » 2008-10-22 18:11:05

В конфиге ниче особо не менял. Кроме как группу и юзера с nobody на www.
И выходит все на оборот - пишет ,что из под рута нельзя запускать, а из другого юзера запускает (если дать права на лог и пид файл)

На хайлоаде тож ниче не ответили. Попросили показать
что показывает /usr/local/etc/rc.d/php-fpm rcvar ?
Оно у меня пишет

Код: Выделить всё

# php_fpm
php_fpm_enable=YES
И лог в /var/log/php-fpm.log пустой.
Если стартовать из под рута, то вот что:

Код: Выделить всё

Oct 22 18:11:43.602028 [ERROR] fpm_unix_conf_wp(), line 124: please specify user and group other than root, pool 'default'

MAK
ст. сержант
Сообщения: 344
Зарегистрирован: 2008-09-17 2:23:21

Re: nginx php-fpm

Непрочитанное сообщение MAK » 2008-10-22 19:40:50

DeNn писал(а):

Код: Выделить всё

что показывает /usr/local/etc/rc.d/php-fpm rcvar ?
Все скрипты из папки /usr/local/etc/rc.d/(равно как и /etc/rc.d) имеют один(обязательный) апи: start|stop|restart
Это чтобы при старте системы они стартовали, а при shutdown -r now стопились.
Так что вызывыать нужно

Код: Выделить всё

/usr/local/etc/rc.d/php-fpm start
Что пишет эта команда? И под рутом и нет.

Аватара пользователя
DeNn
мл. сержант
Сообщения: 92
Зарегистрирован: 2007-07-18 11:25:53

Re: nginx php-fpm

Непрочитанное сообщение DeNn » 2008-10-22 22:17:57

Я ж написал. Если стартую ее из под рута вот что:

Код: Выделить всё

Oct 22 18:11:43.602028 [ERROR] fpm_unix_conf_wp(), line 124: please specify user and group other than root, pool 'default'
А если из под другого юзера, то ругнется что нет прав на запись в лог и на пид файл. Если дать права, то все ок запускает

MAK
ст. сержант
Сообщения: 344
Зарегистрирован: 2008-09-17 2:23:21

Re: nginx php-fpm

Непрочитанное сообщение MAK » 2008-10-23 7:16:01

DeNn писал(а):Я ж написал. Если стартую ее из под рута вот что:

Код: Выделить всё

Oct 22 18:11:43.602028 [ERROR] fpm_unix_conf_wp(), line 124: please specify user and group other than root, pool 'default'
Воспользовались этим советом? Установили user и group отличный от рута? Конфиг php_fpm в студию.

Аватара пользователя
DeNn
мл. сержант
Сообщения: 92
Зарегистрирован: 2007-07-18 11:25:53

Re: nginx php-fpm

Непрочитанное сообщение DeNn » 2008-10-23 9:08:26

Код: Выделить всё

%cat /usr/local/etc/php-fpm.conf
<?xml version="1.0" ?>
...
                <section name="pool">

                        Name of pool. Used in logs and stats.
                        <value name="name">default</value>

                        Address to accept fastcgi requests on.
                        Valid syntax is 'ip.ad.re.ss:port' or just 'port' or '/path/to/unix/socket'
                        <value name="listen_address">127.0.0.1:9000</value>

                        <value name="listen_options">

                                Set listen(2) backlog
                                <value name="backlog">-1</value>

                                Set permissions for unix socket, if one used.
                                In Linux read/write permissions must be set in order to allow connections from web server.
                                Many BSD-derrived systems allow connections regardless of permissions.
                                <value name="owner"></value>
                                <value name="group"></value>
                                <value name="mode">0666</value>
                        </value>

                        Additional php.ini defines, specific to this pool of workers.
                        <value name="php_defines">
                <!--            <value name="sendmail_path">/usr/sbin/sendmail -t -i</value>  -->
                <!--            <value name="display_errors">0</value>                        -->
                        </value>

                        Unix user of processes
                <!--    <value name="user">www</value>                         -->

                        Unix group of processes
                <!--    <value name="group">www</value>               -->

 ...                     

</configuration>


strmaks
рядовой
Сообщения: 47
Зарегистрирован: 2008-04-23 15:58:59
Откуда: Minsk

Re: nginx php-fpm

Непрочитанное сообщение strmaks » 2008-10-23 10:17:53

DeNn писал(а):

Код: Выделить всё

%cat /usr/local/etc/php-fpm.conf
<?xml version="1.0" ?>
...
                <section name="pool">

                        Name of pool. Used in logs and stats.
                        <value name="name">default</value>

                        Address to accept fastcgi requests on.
                        Valid syntax is 'ip.ad.re.ss:port' or just 'port' or '/path/to/unix/socket'
                        <value name="listen_address">127.0.0.1:9000</value>

                        <value name="listen_options">

                                Set listen(2) backlog
                                <value name="backlog">-1</value>

                                Set permissions for unix socket, if one used.
                                In Linux read/write permissions must be set in order to allow connections from web server.
                                Many BSD-derrived systems allow connections regardless of permissions.
                                <value name="owner"></value>
                                <value name="group"></value>
                                <value name="mode">0666</value>
                        </value>

                        Additional php.ini defines, specific to this pool of workers.
                        <value name="php_defines">
                <!--            <value name="sendmail_path">/usr/sbin/sendmail -t -i</value>  -->
                <!--            <value name="display_errors">0</value>                        -->
                        </value>

                        Unix user of processes
                <!--    <value name="user">www</value>                         -->

                        Unix group of processes
                <!--    <value name="group">www</value>               -->

 ...                     

</configuration>

ЭЭЭ, я конечно не большой специалист, но мне кажется что строчки
<!-- <value name="user">www</value> -->
<!-- <value name="group">www</value> -->

надо бы раскомментировать.
Не спрашивайте, по ком гудит трансформатор, он гудит сам по себе...

Аватара пользователя
DeNn
мл. сержант
Сообщения: 92
Зарегистрирован: 2007-07-18 11:25:53

Re: nginx php-fpm

Непрочитанное сообщение DeNn » 2008-10-23 13:57:52

strmaks писал(а): ЭЭЭ, я конечно не большой специалист, но мне кажется что строчки
<!-- <value name="user">www</value> -->
<!-- <value name="group">www</value> -->

надо бы раскомментировать.
От блин и точно. Как то я думал, что в конфигах комментарии обычно # обозначают. Всем спасибо - работает :)

strmaks
рядовой
Сообщения: 47
Зарегистрирован: 2008-04-23 15:58:59
Откуда: Minsk

Re: nginx php-fpm

Непрочитанное сообщение strmaks » 2008-10-23 14:13:16

DeNn писал(а):
strmaks писал(а): ЭЭЭ, я конечно не большой специалист, но мне кажется что строчки
<!-- <value name="user">www</value> -->
<!-- <value name="group">www</value> -->

надо бы раскомментировать.
От блин и точно. Как то я думал, что в конфигах комментарии обычно # обозначают. Всем спасибо - работает :)
У php-fpm конфиг в формате xml о чем говрит его первая строчка.
Не спрашивайте, по ком гудит трансформатор, он гудит сам по себе...