Відмінності між версіями «Php-fpm»

Матеріал з Wiki Welard
Перейти до навігації Перейти до пошуку
(Created page with 'Замітка розрахована на тих, хто хоче вижати максимум продуктивності для своєї конфігурації. Тако...')
 
Рядок 10: Рядок 10:
 
&lt;value name="group"&gt;nginx&lt;/value&gt;</pre>
 
&lt;value name="group"&gt;nginx&lt;/value&gt;</pre>
 
Налаштування nginx<br>
 
Налаштування nginx<br>
−
<pre>server {
+
server {
−
listen 80;
+
listen 80;
−
'''server_name test;
+
'''server_name test;
−
'''
+
'''
−
access_log /var/log/test.log;
+
access_log /var/log/test.log;
−
error_log /var/log/test-access.log;
+
error_log /var/log/test-access.log;
−
include fastcgi_params;
+
include fastcgi_params;
  
−
'''# Корінь де буде лежати сайт
+
'''# Корінь де буде лежати сайт
−
'''root /srv/www/test/htdocs;
+
'''root /srv/www/test/htdocs;
  
−
'''# Всю статику віддаємо nginx  
+
'''# Всю статику віддаємо nginx  
−
'''location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|bmp|swf)$ {
+
'''location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|bmp|swf)$ {
−
    root /srv/www/zg/htdocs;
+
    root /srv/www/zg/htdocs;
−
}
+
}
  
−
'''# Перенаправлення всіх запитів на index.php,
+
'''# Перенаправлення всіх запитів на index.php,
−
'''if (!-e $request_filename) {
+
'''if (!-e $request_filename) {
−
    rewrite ^.*$ /index.php last;
+
    rewrite ^.*$ /index.php last;
−
}
+
}
  
−
'''# корінь ссайту  
+
'''# корінь ссайту  
−
'''location / {
+
'''location / {
−
    root /srv/www/zg/htdocs;
+
    root /srv/www/zg/htdocs;
−
    index index index.html index.htm index.php;
+
    index index index.html index.htm index.php;
−
}
+
}
  
−
'''# Передача файлів .php на інтерфейс fastCGI (php-fpm)
+
'''# Передача файлів .php на інтерфейс fastCGI (php-fpm)
−
'''location ~ \.php$ {
+
'''location ~ \.php$ {
−
fastcgi_pass unix:/var/run/php-fpm;
+
fastcgi_pass unix:/var/run/php-fpm;
−
fastcgi_index index.php;
+
fastcgi_index index.php;
−
fastcgi_param SCRIPT_FILENAME /srv/www/test/htdocs$fastcgi_script_name;
+
fastcgi_param SCRIPT_FILENAME /srv/www/test/htdocs$fastcgi_script_name;
−
include fastcgi_params;
+
include fastcgi_params;
−
}
+
}
−
}
+
}
  
−
</pre>
 
 
<br>
 
<br>

Версія за 12:58, 17 грудня 2009

Замітка розрахована на тих, хто хоче вижати максимум продуктивності для своєї конфігурації. Також вона буде корисна і власникам VPS, обмежені ресурси яких роблять традиційну зв'язку apache + php ще менш придатною до використання. Описувана у статті конфігурація побудована на CentOS 5.4

Подготовка

Необхідні пакети можна взяти тут ftp://centos.alt.ru/pub/php-fpm/

Налаштування php-fpm.conf (змінюємо відповідні входження)

<value name="listen_address">/var/run/php-fpm</value>
<value name="owner">nginx</value>
<value name="group">nginx</value>

Налаштування nginx

server {
listen 80;
server_name test;

access_log /var/log/test.log;
error_log /var/log/test-access.log;
include fastcgi_params;
# Корінь де буде лежати сайт
root /srv/www/test/htdocs;
# Всю статику віддаємо nginx 
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|bmp|swf)$ {
    root /srv/www/zg/htdocs;
}
# Перенаправлення всіх запитів на index.php,
if (!-e $request_filename) {
    rewrite ^.*$ /index.php last;
}
# корінь ссайту 
location / {
    root /srv/www/zg/htdocs;
    index index index.html index.htm index.php;
}
# Передача файлів .php на інтерфейс fastCGI (php-fpm)
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /srv/www/test/htdocs$fastcgi_script_name;
include fastcgi_params;
}
}