MrMeison
@MrMeison

Joomla (+Phoca Gallery) + nginx + php-fpm: Проблема при генерации картинок?

ривет!

Есть проблема:

При генерации миниатюр для Phoca Gallery, скрипт генерирует парочку картинок и все — белый экран, нечего не происходит. Помогает только рестарт nginx сервера.

Мои конфиги nginx:

location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/tmp/wwwpool.sock;
fastcgi_cache one;
fastcgi_cache_min_uses 3;
fastcgi_cache_valid 200 301 302 304 5m;
fastcgi_cache_key "$request_method|$host|$request_uri";
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_ignore_client_abort off;
}
index index.html index.php;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ /\.ht {
deny all;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~* /(images|cache|media|logs|tmp)/.*\.(php|pl|py|jsp|asp|sh|cgi)$ {
return 403;
error_page 403 /403_error.html;
}
# caching of files
location ~* \.(ico|pdf|flv)$ {
expires 1y;
}

location ~* \.(js|css|png|jpg|jpeg|gif|swf|xml|txt)$ {
expires 14d;
}



Конфиг nginx.conf:

user user;
worker_processes 1;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
use epoll;
}
http {
fastcgi_cache_path /tmp/fcgi-cache/ levels=1:2 keys_zone=one:10m;
sendfile on;
sendfile_max_chunk 128k;
postpone_output 1460;
server_names_hash_bucket_size 64;
client_max_body_size 15m;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
proxy_read_timeout 120;
proxy_connect_timeout 120;
server_tokens off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

gzip on;
gzip_disable "msie6";
ssi on;

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
  • Вопрос задан
  • 3997 просмотров
Пригласить эксперта
Ответы на вопрос 2
pomeo
@pomeo
логи смотрите, у nginx есть лог и у php-fpm есть лог
Ответ написан
Tehnomag
@Tehnomag
fastcgi_cache_key: внимательно работаем с зависимостями
fastcgi_cache_key "$request_method|$http_if_modified_since|$http_if_none_match|$host|$request_uri";

Особого внимания заслуживает значение в директиве fastcgi_cache_key. Я привел минимальное рабочее значение этой директивы. Шаг вправо, шаг влево, и вы начнете в ряде случаев получать «неправильные» данные из кэша. Итак:

Зависимость от $request_method нам нужна, т.к. HEAD-запросы в Интернете довольно часты. Ответ на HEAD-запрос никогда не содержит тела. Если убрать зависимость от $request_method, то может так совпасть, что кто-то до вас запросил главную страницу HEAD-методом, а вам потом по GET отдастся пустой контент.

Зависимость от $http_if_modified_since нужна для того, чтобы кэш с ответом 304 Not Modified не был случайно отдан клиенту, делающему обычный GET-запрос. Иначе клиент может получить пустой ответ из кэша.
То же самое и с $http_if_none_match. Мы должны быть застрахованы от выдачи пустых страниц клиентам!

зависимость от $host и $request_uri не требует комментариев

Источник: http://dklab.ru/chicken/nablas/56.html
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы