Re: Не отображаются картинки после ресайзинга
Хотя нет, написал не разобравшись. На каждую картинку в логе два ответа - 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: Не отображаются картинки после ресайзинга
Думаю, где-то таймаут срабатывает. А что, если ресайсить энжином? 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: Не отображаются картинки после ресайзинга
Здравствуйте, 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
Не отображаются картинки после ресайзинга
Имеются 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