moodle slasharguments nginx php-fpm

Posted in Новости on 31 января, 2016 by admin

Если moodle установлен в корень сайта ( DOCROOT ) и доступен как, http://site.com/ , то для активации slash arguments нужно в nginx в конфиге сайта в блоке server прописать :

rewrite ^/(.*\.php)(/)(.*)$ /$1?file=/$3 last;

Tags: , ,

Начальная оптимизация php5-fpm

Posted in Новости on 29 января, 2016 by admin

Итак, имеем сервер 4 ядра , 8Gb RAM . На сервере стоит MySQL , php5-fpm, nginx.
Сначала рассчитываем, сколько мы можем выделить памяти для php5-fpm . Возьмем половину реальной — 4Gb.
Далее, узнаем, сколько памяти в среднем «ест» один процесс php5-fpm , в этом нам поможет конвеер отсюда
root@XXX:/# pidof php5-fpm | xargs pmap -d | grep '^mapped' | awk '{print $4}' | sed 's/K//' | perl -e 'do { $a+=$_; $b++ } for <>;print $a/1024, " mb\n", $a/1024/$b, " mb\n"'
197.484375 mb
24.685546875 mb

Округлим до 30Мб
Вводные : 4 ядра , 4Гб RAM , ~30Мб на процесс.

pm.max_children = Количество памяти под fpm / Память одного процесса
pm.min_spare_servers = Количество ядер * 2
pm.max_spare_servers = Количество ядер * 4
pm.start_servers = ( pm.min_spare_servers + pm.max_spare_servers) / 2

Итого :

pm.max_children = 136
pm.min_spare_servers = 8
pm.max_spare_servers = 16
pm.start_servers = 12

Tags: , , , ,

Выставляем владельца и права для сокета php5-fpm

Posted in Новости on 9 июля, 2014 by admin

В конфиг пула нужно просто добавить :

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

соответственно заменив пользователя и права своими нужными.

Tags: , ,

подключение sockets к php-fpm Debian

Posted in Новости on 1 мая, 2010 by admin

устанавливваем php-fpm согласно вот этому отличному мануалу http://phpsuxx.blogspot.com/2009/10/ispmanager-php-fpm-debian5.html

но для подключения sockets в процессе компиляции

«Патчим пхп и собираем:

patch -p1 < ../fpm.patch ./buildconf --force mkdir fpm-build && cd fpm-build ../configure --with-fpm --prefix=/opt/php53 --with-libevent="$LIBEVENT_SEARCH_PATH" --with-mysql --with-gd --with-freetype-dir=/usr/include/freetype2 --with-jpeg-dir=/usr/lib && make # или ../configure --with-fpm --prefix=/opt/php52 --with-libevent="$LIBEVENT_SEARCH_PATH" --with-mysql --with-gd --with-freetype-dir=/usr/include/freetype2 --with-jpeg-dir=/usr/lib && make make install " нужно в конец строки конфигурирования добавить --enable-sockets . А в остальном делать все по мануалу. Описание сокетсов http://www.php.su/functions/?cat=sockets

Tags: , ,