Re: Не отображаются картинки после ресайзинга

2014-01-27 Пенетрантность Miklucho
Хотя нет, написал не разобравшись. На каждую картинку в логе два ответа -
301-й это как раз перенаправление из htaccess, а 200-й - выдача
php-скрипта.

В общем я разобрался с проблемой, которая оказалась банальной до отчаяния
ошибкой в php-коде - функция mkdir пыталась повторно создать папку, которая
уже была создана при запросе первой картинки, в итоге сервер выдавал
несколько warning'ов со всеми вытекающими последствиями.
Извините за беспокойство.

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,246772,246848#msg-246848

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Не отображаются картинки после ресайзинга

2014-01-26 Пенетрантность Anton Bessonov

Думаю, где-то таймаут срабатывает.

А что, если ресайсить энжином?

On 24.01.2014 08:12, Miklucho wrote:

Имеются nginx+apache+php на CentOS
Потребовалось сделать ресайз картинок на лету по ссылкам типа:
http://www.sitename.ru/thumb/350x250xin/images_path/image_name.jpg
Реализовал следующим образом

1. В nginx проверяем существование картинки, если не существует
перенаправляем на Апач.
location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|swf|js)$  {
root /home/www/sitename.ru/www/;
try_files $uri @fallback;
}
location @fallback {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_connect_timeout 120;
proxy_send_timeout120;
proxy_read_timeout180;
}

2. На бекэнде в .htaccess свое перенаправление:
RewriteRule ^thumb/(.*) /thumb.php?req=$1

3. Скрипт thumb.php выполняет ресайз, сохраняет картинку для кеша и отдает
ее в браузер.

Схема работает, но есть такая проблема. На странице одновременно выводится
до 10 таких картинок, так вот при первом заходе на страницу отображается
только 1-2 изображения из десяти. Для остальных браузер рисует стандартную
иконку отсутствующей картинки. Причем если посмотреть на FTP - отресайзенные
картинки существуют!
При обновлении страницы уже все картинки отображаются корректно.

Мне кажется, что проблема в том, что php сравнительно медленно ресайзит
изображения и из-за этого срабатывают какие-то таймауты, либо в apache, либо
в nginx.
Не подскажет ли кто куда мне копать?

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,246772,246772#msg-246772

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru



--
Certified Prince2:2009 Project Manager
Professional Scrum Master I & II
Oracle Certified Expert, Enterprise JavaBeans Developer
Oracle Certified Professional, Java SE 6 Programmer

Now that's a test of the character of an organization.
Of the organizations that are attempting to implement
Scrum probably, 30% - 35% will successfully implement it.
- Ken Schwaber

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Не отображаются картинки после ресайзинга

2014-01-24 Пенетрантность Pavel V.
Здравствуйте, Miklucho.

Вы писали 24 января 2014 г., 14:12:49:



> Мне кажется, что проблема в том, что php сравнительно медленно ресайзит
> изображения и из-за этого срабатывают какие-то таймауты, либо в apache, либо
> в nginx.
> Не подскажет ли кто куда мне копать?

1) Смотрите в логи
2) Смотрите в ответы сервера например в firebug (в Firefox).



-- 
С уважением,
 Pavel  mailto:pavel2...@ngs.ru

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Не отображаются картинки после ресайзинга

2014-01-23 Пенетрантность Miklucho
Имеются nginx+apache+php на CentOS
Потребовалось сделать ресайз картинок на лету по ссылкам типа:
http://www.sitename.ru/thumb/350x250xin/images_path/image_name.jpg
Реализовал следующим образом

1. В nginx проверяем существование картинки, если не существует
перенаправляем на Апач.
location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|swf|js)$  {
root /home/www/sitename.ru/www/;
try_files $uri @fallback;
}
location @fallback {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_connect_timeout 120;
proxy_send_timeout120;
proxy_read_timeout180;
}

2. На бекэнде в .htaccess свое перенаправление:
RewriteRule ^thumb/(.*) /thumb.php?req=$1

3. Скрипт thumb.php выполняет ресайз, сохраняет картинку для кеша и отдает
ее в браузер.

Схема работает, но есть такая проблема. На странице одновременно выводится
до 10 таких картинок, так вот при первом заходе на страницу отображается
только 1-2 изображения из десяти. Для остальных браузер рисует стандартную
иконку отсутствующей картинки. Причем если посмотреть на FTP - отресайзенные
картинки существуют! 
При обновлении страницы уже все картинки отображаются корректно.

Мне кажется, что проблема в том, что php сравнительно медленно ресайзит
изображения и из-за этого срабатывают какие-то таймауты, либо в apache, либо
в nginx.
Не подскажет ли кто куда мне копать?

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,246772,246772#msg-246772

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru