Показаны различия между двумя версиями страницы.
Следующая версия | Предыдущая версия | ||
webserver-nginx-phpfpm [07.01.2012 14:59] vdsadmin@lazutov.ru создано |
webserver-nginx-phpfpm [02.11.2014 23:49] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | === Сборка php === | ||
+ | |||
Прежде всего переходим в папку, куда мы скачаем (http:// | Прежде всего переходим в папку, куда мы скачаем (http:// | ||
< | < | ||
Строка 27: | Строка 29: | ||
make install | make install | ||
</ | </ | ||
- | + | Скопируем скрипт запуска-остановки и установим права на запуск | |
+ | < | ||
+ | cp sapi/ | ||
+ | chmod +x / | ||
+ | </ | ||
+ | Добавим в автозапуск | ||
+ | < | ||
+ | ==== Настройка спавнера==== | ||
+ | Спавнер -- процесс, | ||
+ | А теперь настроим планировщик. Его конфигурация находится в файле / | ||
+ | Важно: в текущей версии php-fpm не обрабатывает никаких php.ini , а обрабатывает только указанный выше конфиг.\\ | ||
+ | О синтаксисе этого файла написано много и хорошо в официальной документации: | ||
+ | Предполагаю, | ||
+ | < | ||
+ | [global] | ||
+ | pid = / | ||
+ | error_log = / | ||
+ | [web] | ||
+ | # настройка пула, который я назвал web. Вы можете называть как удобно. | ||
+ | php_admin_value[date.timezone] = Europe/ | ||
+ | php_admin_flag[cgi.fix_pathinfo] = off | ||
+ | # см. ниже. | ||
+ | listen = 127.0.1.1: | ||
+ | # запомните адрес, на который мы вешаем спавнер | ||
+ | |||
+ | user = web | ||
+ | group = web | ||
+ | |||
+ | |||
+ | pm = dynamic | ||
+ | pm.max_children = 50 | ||
+ | pm.start_servers = 3 | ||
+ | pm.min_spare_servers = 3 | ||
+ | pm.max_spare_servers = 10 | ||
+ | pm.max_requests = 500 | ||
+ | |||
+ | # пример управления логированием | ||
+ | access.log = / | ||
+ | access.format = %R - %u %t "%m %r%Q%q" | ||
+ | php_flag[display_errors] = on | ||
+ | php_admin_value[error_log] = / | ||
+ | php_admin_flag[log_errors] = on | ||
+ | # пример изменения других опций | ||
+ | php_admin_flag[memory_limit] = 32M | ||
+ | </ | ||
+ | Всё. Перезапускаем спавнер '' | ||
+ | Вы должны увидеть что-то похожее на | ||
+ | < | ||
+ | tcp 0 0 127.0.1.1: | ||
+ | </ | ||
+ | |||
+ | ==== cgi.fix_pathinfo ==== | ||
+ | cgi.fix_pathinfo | ||
+ | Например: | ||
+ | Но представим себе ситуацию, | ||
+ | При запросе / | ||
+ | Мораль. Всегда проверяйте это значение. оно должно быть выключено (off/ | ||
+ | |||
+ | ==== Настройка nginx==== | ||
+ | Тут всё стандартно (взято с офсайта nginx): а файле / | ||
+ | < | ||
+ | server { | ||
+ | listen | ||
+ | server_name | ||
+ | # _ - сервер по-умолчанию. Исправьте на свой или если он у вас один на этом порту, используйте его | ||
+ | |||
+ | access_log | ||
+ | root / | ||
+ | |||
+ | location / { | ||
+ | index index.php index.html index.htm; | ||
+ | } | ||
+ | |||
+ | error_page | ||
+ | |||
+ | location = /50x.html { | ||
+ | root / | ||
+ | } | ||
+ | # вот это наш блок. Убедитесь, | ||
+ | location ~ \.php$ { | ||
+ | fastcgi_pass | ||
+ | fastcgi_index | ||
+ | include | ||
+ | fastcgi_param | ||
+ | |||
+ | } | ||
+ | location ~ /\.ht { | ||
+ | deny all; | ||
+ | } | ||
+ | }</ | ||
+ | Помещаем в index.php стандарнтный скрипт ''<? | ||
+ | < | ||
+ | update-rc.d nginx defaults | ||
+ | service nginx restart | ||
+ | </ | ||
+ | |||
+ | Всё. Настройка завершена. | ||
+ | |||
+ | ==== Сборка модулей php. phpize | ||
+ | Помните, | ||
+ | Допустим, | ||
+ | < | ||
+ | phpize | ||
+ | make | ||
+ | make install | ||
+ | </ | ||
+ | Всё. Библиотека собрана и установлена.\\ | ||
+ | Для вступления в силу изменений скорее всего потребуется перезапуск спавнера php-fpm. |