@nuklon, проконсультирую по скайпу за 1000 рублей
Форум → Программирование → PHP для идиотов → Ресайз больших фото
Ресайз больших фото
Страницы: ← Предыдущая страница • Следующая страница →
-
-
20 мая 2016 г. 13:32, спустя 3 часа 46 минут 42 секунды
Короче все понятно, готовое решение на чистом Nginx это очень сложно для понимания.
Я решение сравнивал с PIL по скорости, думаю php+GD или php+ImageMagick не сильно будут быстрее того же PIL. Nginx быстрее в раз 10
Но ТС просто не осилит использовать Nginx, зато амбиции авитоСпустя 83 сек.http { # Укажите необходимый путь до каталога кеша, имя кеша и максимальный размер кеша proxy_cache_path <STORAGE_ROOT>/nginx/cache levels=1:2 keys_zone=<CACHE_NAME>:10m max_size=1G; # Теперь настроим сервер, который будет кешировать результаты server { listen 80; server_name www.example.org; location ~* ^/(resize|crop)/ { proxy_pass proxy_cache <CACHE_NAME>; proxy_cache_key "$host$document_uri"; proxy_cache_valid 200 1d; proxy_cache_valid any 1m; proxy_cache_use_stale error timeout invalid_header updating; } } # И сервер, который будет выполнять resize и crop server { listen 80; server_name image.example.org; location ~* ^/resize/([\d\-]+)/([\d\-]+)/(.+)$ { alias <STORAGE_ROOT>/$3; image_filter resize $1 $2; image_filter_buffer 2M; error_page 415 = /empty; } location ~* ^/crop/([\d\-]+)/([\d\-]+)/(.+)$ { alias <STORAGE_ROOT>/$3; image_filter crop $1 $2; image_filter_buffer 2M; error_page 415 = /empty; } location = /empty { empty_gif; } } }Спустя 67 сек.После чего делаешь запрос на
и получаешь в нужном размере картинкуhttps://smappi.org/ - платформа по созданию API на все случаи жизни -
20 мая 2016 г. 14:23, спустя 50 минут 20 секунд
@adw0rd, будь проще! Вот готовое решение от всех бед на nginx основаное на моем конфиге :)
fredpalmer/dimwit
dimwit - Nginx Dynamic Image Manipulation Service
github.com
Сапожник без сапог -
20 мая 2016 г. 15:06, спустя 43 минуты 1 секунду
@phpdude, да пофиг, дело ТС
https://smappi.org/ - платформа по созданию API на все случаи жизни -
20 мая 2016 г. 20:27, спустя 5 часов 21 минуту 50 секунд
нет же ))) формируй ссылку на настоящую превьюшку как если бы она существовала.
@artoodetoo, Спасибо за минуты жизни. Но это я понял уже на 2-ой еще странице. Вопрос в другом: Вместо "Спасибо, фото загружено" я хочу вывести саму только что загруженную картинку, там же, в этой же форме, бля, ну как на авито или в Я.Почте когда прикрепляешь файлы (нет, это не значит, что я делаю 2-ой авито или яндекс). Т.е, юзер загрузил.. пошел прогрессбар и как только загрузился вывести положительный результат в виде этой самой картинки. Не потом, когда какой-нибудь хер обратится к этой картинке или странице с картинкой, а сейчас этому же пользователю... фух..
Теперь по поводу nginx. Друзья, с этим зверем никогда дело не имел. Код, который показали в принципе понятен, но не понятно куда именно это вписать и прикрутить, получится ли эти действия в Денвере (если да, то где).
И нужны ли какие-нибудь требования к хостингу?@master, не заработал же еще, ыы
pi+ -
20 мая 2016 г. 21:10, спустя 42 минуты 6 секунд
"нет я всё понял, но что конкретно? что ты имела в виду?" :D
ιιlllιlllι унц-унц -
20 мая 2016 г. 23:51, спустя 2 часа 41 минуту 40 секунд
денвер аккуратно удали, поставь nginx+php-fpm и стань на голову выше себя
лучше конечно попробовать linux, но я многое прошу, знаюhttps://smappi.org/ - платформа по созданию API на все случаи жизни -
-
21 мая 2016 г. 4:33, спустя 4 часа 16 минут 23 секунды
ох, денвер
@master, вот она и проблема нашлась))
Сапожник без сапог -
21 мая 2016 г. 5:05, спустя 32 минуты 11 секунд
@phpdude, приучает к плохому
не всё полезно, что в swap полезло -
21 мая 2016 г. 9:53, спустя 4 часа 47 минут 21 секунду
денвер аккуратно удали, поставь nginx+php-fpm и стань на голову выше себя
@adw0rd,
ох, денвер
@master, зато быстро) До переустановки у меня стоял php+apache руками собранный, но щас у меня конкретная задача и ибаться с серверами не предполагал. А тут еще и nginx подсовываете. Нельзя ли то же самое на апаче сделать?
Небольшая эврика! Если делать ресайз не при загрузке, а при выводе, то результат выдается быстрее. Например, гружу 4 фото, ресайз 4-го фото при загрузке завершается за 15 сек. А если только загрузить, а при выводе превьюшек (там же, а не потом где-нибудь на сайте), в таком виде -
, то вся работа заканчивается за 5-6 сек. Не айс конечно, но не так ужасно как при загрузке.<img src="preview.php?path=' + options.path + data.file + '&h=100">pi+ -
21 мая 2016 г. 9:55, спустя 2 минуты 8 секунд
зато быстро
@nuklon, оно и видно
не всё полезно, что в swap полезло -
21 мая 2016 г. 22:16, спустя 12 часов 20 минут 58 секунд
@nuklon, извини, не шарю в современных технологиях типа денвера, апача и пхп
они слишком сложны для меняhttps://smappi.org/ - платформа по созданию API на все случаи жизни -
25 мая 2016 г. 3:44, спустя 3 дня 5 часов 28 минут
Мужуки, сделал как советовали.. короч, установил по человечески апач+пхп (nginx вместо апача не хочу устанавливать, а совместно.. щас не до этого), ресайзю при обращении, а при загрузке миниатюры делаю канвасом (в принципе, главный вопрос в этом и был, как вывести миниатюры сразу же.., ну да хуй с ним).
Такой вопрос, при выводе миниатюр при обращении так:
проверяется есть ли в соответствующей папке файл, если есть вывожу, иначе строю путь и сохраняю. На хабре почитал, что сервер может отдать изображение не обращаясь к скрипту:<img src="<?=$_SITE['thumb']->thumb('uploads/ob/1.jpg', '200x200', [ 'wm' => 'i/wm.png' ])?>">
для апача такой код
при этом файлы хранятся по такому путиRewriteCond %{REQUEST_URI} ^(/static/) RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^(.*)$ thumb.php?file=$1 [L]
. Тута -/static/d1/7e/d17e248758722c42d8c88d21d8b538d7.jpgКак то же самое сделать, если у меня миниатюры распределяются так:
где uploads/ob/ - параметр, файл тоже, а thumbs/0x200/ - папка для переданного размера, в папке миниатюрuploads/ob/thumbs/0x200/1.jpg
?
Простое решение для обработки изображений на лету с кешированием результата
На сегодняшний день практически в любом веб-приложении использующем изображения существует потребность формировать уменьшенные копии этих изображений
habrahabr.ru
pi+ -
25 мая 2016 г. 4:33, спустя 48 минут 12 секунд
Да, забыл добавить.. на хабре решение практически такое же как и здесь отвечали, тока на нгинксе + еще @artoodetoo похожее выкладывал на апаче, но у меня решение другое - нет отдельного файла куда передаются открыто (мусорить смогут негодяи) параметры и этот файл как-то в конфиге сервера настраивается
pi+
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!