Уменьшение размера изображений на лету.

Поделиться
HTML-код
  • Опубликовано: 26 окт 2024

Комментарии • 93

  • @AidaDrogan
    @AidaDrogan  4 года назад +15

    И, кстати, я против трактовки мультика в конце видео, как задницы рамблера, в которую воткнут якорь, дабы не дать ей потонуть в море нашей любви.
    Это просто кораблик, который плывёт под красивую музыку. Я не очень хорошо владею английским, но думаю, что это песня про веб, потому что там есть что-то про anchor, анимацию шариков и FAQ.

    • @yairrodriguez3690
      @yairrodriguez3690 4 года назад +1

      Не очень хорошо владеете английским?! А как же английский канал?

    • @AidaDrogan
      @AidaDrogan  4 года назад +3

      @@yairrodriguez3690 хм... На английском канале эта шутка не прокатит =D Придётся искать хорошую песенку на русском: про змею и черепаху, например. Там ещё кто-то куда-то ехал, кажется...

    • @dmitriyart2989
      @dmitriyart2989 4 года назад +1

      Аида добрый день
      могли бы вы рассказать еще про модуль в ngnix под названием njs scripting language
      не до конца понял для чего он нужен и с чем его едят
      заранее спасибо

  • @alexey9337
    @alexey9337 4 года назад +12

    Божечки, это лучший материал по nginx, что я видел...

  • @Murrengan
    @Murrengan 4 года назад +5

    это золотой контент! Благодарю за твои труды и посылаю лучи любви ❤️

    • @AidaDrogan
      @AidaDrogan  4 года назад +2

      Спасибо, коллега! У тебя тоже классный контент ;)
      -- Лучи любви приняты, обработаны, умножены и высланы отправителю ^___^ --

  • @yairrodriguez3690
    @yairrodriguez3690 4 года назад +7

    С возвращением Ася, спасибо за видео!

  • @ЕвгенКабанов-ц2е
    @ЕвгенКабанов-ц2е 4 года назад +1

    Замечательное видео, как радостно что наши программисты начали делиться опытом и знаниями. Помню как лет 5 назад ничего на Ютубе не было. Удачи вам в делах, выкладывайте новые видео о программировании и всего вам наилучшего

  • @mooncorizer290
    @mooncorizer290 2 года назад

    Классный контент, спасибо автору, обнял

  • @serusok
    @serusok 4 года назад

    Наконец-то звук хороший

  • @ПавелМинич
    @ПавелМинич 4 года назад +2

    Бозе мой, ну какая же ты милаха! ))

  • @ОлегСелин-ш9ы
    @ОлегСелин-ш9ы 4 года назад +1

    Интересный материал, отличная подача! Тащусь от зарисовок)

  • @НиколайСладкий-н4к
    @НиколайСладкий-н4к 4 года назад +2

    Обожаю конфигурить nginx и всем советую ;D Спасибо за видео, как всегда круто!)

  • @nurlybekademov2609
    @nurlybekademov2609 3 года назад

    Спасибо за видео.

  • @user-zx5sv3hb2u
    @user-zx5sv3hb2u 4 года назад

    Годнота то какая!
    А я заметил в sources.list репозиторий elasticsearch! А будут ли видео по эластику? ))

    • @AidaDrogan
      @AidaDrogan  4 года назад

      С эластиком мы так и не подружились =) проблема медленного поиска по огромной базе решилась её переработкой, индексацией и изменением алгоритма поиска. Но, может, я когда-нибудь вернусь к идее попробовать elasticsearch.

  • @tsydykhpokhodiev751
    @tsydykhpokhodiev751 3 года назад

    Just what i needed :-)

  • @jamesdavis4071
    @jamesdavis4071 4 года назад +1

    Здорово, не знал о такой возможности nginx. Спасибо! И да, больше комментариев! ^.^

  • @Sergey-jq5kz
    @Sergey-jq5kz 3 года назад

    Ты прекрасный котик

  • @clickabelno
    @clickabelno 4 года назад +1

    Лайк за полезный контент, ща чувство юмора и за голос)

  • @andreydmitriyev4582
    @andreydmitriyev4582 4 года назад

    Спасибо за неожиданный лайфхак!

  • @chingizmamiyev7973
    @chingizmamiyev7973 4 года назад +1

    Как всегда супер

  • @MorgunovVitaly
    @MorgunovVitaly 4 года назад

    Супер! Спасибо за материал!

  • @o0ExTazzY0o
    @o0ExTazzY0o 4 года назад

    пожалуй оставлю комментарий для продвижения видео)

  • @rudinandrey
    @rudinandrey 4 года назад

    видео огонь! спасибо.

  • @dmitriyart2989
    @dmitriyart2989 4 года назад +1

    09:00 пишу - на станционарнике стоит винда 7, на ноутбуке дебиан 10 под граф оболочкой 3dark kde

  • @antonmandrychenko4578
    @antonmandrychenko4578 3 года назад

    Super)))

  • @MichaelPeteichuk
    @MichaelPeteichuk 4 года назад

    Спасибо за скринкаст!

  • @handleftman
    @handleftman 4 года назад +1

    модуль интересный, но у меня захардкожен imagick, не знал, что кешить на 1 год надо , как просил гугляша. Пора идти спеки читать))) спасибо за видео

  • @neocortexlab
    @neocortexlab 4 года назад +2

    Клёво, молодец, только к программированию это никак не относится, а скорее к девопсингу с натяжкой. Ну или банально к системному администрированию. В этот раз я тебя не тролю )) просто сам намедни с этим изрядно занимался камасутрой (особенно с опциями конфига модуля) и свежо ещё предание в памяти... ... ... гляну позже более подробно не по диагонали, может есть что утащить к себе в логово... по поводу сокрытия хедера -- не столкнулся с ошибкой, но возьму на заметку. Спасибо.

    • @AidaDrogan
      @AidaDrogan  4 года назад +1

      К программированию точно никак не относится, потому лежит в плейлисте Оптимизация ;) Думаю, в следующем видео показать, как добиться оптимизации по картинкам без камасутры с NGINX, а как раз силой кодинга.

  • @excelente9842
    @excelente9842 4 года назад +1

    Умничка)

  • @hakooplayplay3212
    @hakooplayplay3212 4 года назад

    Отлично!

  • @АлександрТишинский-ж3я

    Материал огонь, тема интересная. Меня тревожит один момент, такое вот условие для создания кеша (размер в урл) не имеющее лимитов - не является ли дырой, позволяющей если не уронить, то как следует подвесить сервер? +- 300 картинок * [1px, ... 10000px]. Думаю хорошо было бы показать как такую дыру закрыть (если это действительно дыра), а то не редкий случай когда учебный материал уходит в продакшн )).

    • @AidaDrogan
      @AidaDrogan  4 года назад +2

      А вы попробуйте задать роут на 10000px ;) Спойлер: картинка будет отдаваться в оригинальном размере. Image Filter помогает похудеть, а не набрать массу. Так что перекормленных котиков можно не бояться.

    • @АлександрТишинский-ж3я
      @АлександрТишинский-ж3я 4 года назад

      @@AidaDrogan 10000 - согласен, перегнул. А как себя буде вести выводок [1px, ... оригинальный размер]? не удастся ли им заиграть выделенное пространство? Вопрос не про image Filter, а про кладовку где эти котики бузят. Кеш ведь не резиновый. Каюсь, мне лень развернуть и применить метод научного тыка.... зато комментариев больше ))

    • @AidaDrogan
      @AidaDrogan  4 года назад +1

      У кладовки параметр есть max_size=10g (10 гб например). Как только закончится выделенное место, NGINX будет удалять самые старые файлы. А вот если max_size не указан, тогда на их сайте говорят, что будет использовано всё доступное место. А что это за место надо бы протестировать =) Лично я бы без лимитов кэш не описывала. Как-то был неприятный момент на одном сервере, когда бэкапы завалили все доступное пространство, и база легла, потому как ей места не хватило...

  • @SnitchRUS66
    @SnitchRUS66 4 года назад

    Клево! Мне скоро предстоит переезд с Windows Server 2008 на Debian, видос очень кстати. Было бы здорово посмотреть про настройку Nginx как revers proxy через https с авто установкой и авто продлением сертификата. И про image filter - ограничение на операции с картинкой, я так понимаю, делать через регулярки или есть какие-то еще способы? Можно через этот модуль или подобный добавить ватермарку на картинку?

    • @AidaDrogan
      @AidaDrogan  4 года назад

      С сертификатами отлично справляется эта софтинка - certbot.eff.org/instructions. А вот ватермарки я не пробовала. Вроде есть такая директива - image_filter watermark. Надо потестить. Я до 2019-го все операции с картинками доверяла ImageMagick, а потом узнала про Image Filter =)

  • @kerya2858
    @kerya2858 4 года назад +1

    Интересно, какой у вас дистрибутив Linux и тема оформления? Понравился внешний вид.

  • @thepawday
    @thepawday 4 года назад

    Ого. Рад видеть

  • @coconut_punker
    @coconut_punker 4 года назад +1

    А хостинги его(nginx) норм поддерживают? Точнее сказать, часто ли встречаются хостинги кто его поддерживает?

    • @AidaDrogan
      @AidaDrogan  4 года назад

      Я работаю только с выделенными серверами, которые настраиваю под себя. Так что точно не знаю. Думаю, что многие должны поддерживать.

    • @chingizmamiyev7973
      @chingizmamiyev7973 4 года назад

      В основном apache бывает

    • @АлексейВасильченко-д8ц
      @АлексейВасильченко-д8ц 4 года назад

      Часто, не на виртуалках, стоит связка apache+nginx

  • @wizardoflightnings6841
    @wizardoflightnings6841 4 года назад

    👍

  • @andreydmitriyev4582
    @andreydmitriyev4582 4 года назад

    Спасибо, Аидочка!
    Есть пара вопросов:
    1. Подскажи пожалуйста, 8:05 ( кэширование ) - другая ерунда в папке images - тут речь об одном уровне вложенности или подразумевается заведомо бесконеченый уровень ?
    Или чтобы он стал бесконечным, нужно изменить на что-то вроде нижеследующего?
    location /images.*
    2. Я правильно понял, что следующая запись -
    ~ ^/img/(?\d+)/(?.+/*)$
    Позволит брать в переменную image - каритнку с неограниченной вложенностью (количеством слэшей в адресе)?
    По концепции рег. выражений вроде правильно - от нуля до бесконечности слэшей.
    А вот будет ли это правильно в контексте nginx?

    • @AidaDrogan
      @AidaDrogan  4 года назад +1

      Всё верно, будет работать с вложенными папками и в 1 и в 2. Насчёт бесконечности не знаю =) Подозреваю, что уровень вложенности таки конечен. Или NGINX сдастся первым, или браузер.

    • @andreydmitriyev4582
      @andreydmitriyev4582 4 года назад

      @@AidaDrogan спасибо!

    • @andreydmitriyev4582
      @andreydmitriyev4582 4 года назад

      @@AidaDrogan Еще такой нескромный вопрос:
      С уменьшением получилось отлично. А С кешированием затупил.
      У меня папка с проектом в /var/www
      Пути к картинкам в браузере такого вида по умолчанию:
      /storage/uploads/images/adverts/72/e904663392f18b6f83a1a02a7792a999.jpeg
      Попробовал закешировать таким образом
      location /storage/uploads/images {
      root /var/www/public/storage/uploads/images;
      ....
      В root нужно /var/www указывать, при условии, что нужно кешировать только картинки из /var/www/public/storage/uploads/images ?
      Сейчас после введения этого локейшена на картинку пало клеймо 404 (
      Т.О. заработало, но насколько оно правильно?

    • @AidaDrogan
      @AidaDrogan  4 года назад

      Чисто случайно заметила сообщение. RUclips часто не шлёт уведомлений об ответах на ответы, лучше вопросы в корень писать или в телегу =) root - это физическое расположение файлов, т.е. как в файловом менеджере /path/to/my_image.jpg, а location - это url, на который надо откликаться в браузере - mysite.com + (location) - /link/to/my_image.jpg. Если кэшируются картинки из одной папки - она и есть root для location к её содержимому. А для тех, которые не кэшируются location свой. Я придерживаюсь мнения, что если что-то работает, так как задумано, значит оно сделано правильно.

    • @andreydmitriyev4582
      @andreydmitriyev4582 4 года назад

      @@AidaDrogan 🙏💕 спасибо!

  • @sasha_g4
    @sasha_g4 4 года назад

    Интересно что на счёт перформанса. Есть какие-то цифры ? Тоже думаю о подобном решении.

    • @AidaDrogan
      @AidaDrogan  4 года назад +1

      У меня такая схема реализована на сервере, где около 5000 картинок. Так что сложно сказать что-то про производительность при такой маленькой нагрузке. Там, где изображений много, я предпочитаю CDN + отложенная загрузка.

  • @adrtalladi2404
    @adrtalladi2404 4 года назад

    Расскажите своё отношение о Upwork ?

    • @AidaDrogan
      @AidaDrogan  4 года назад +1

      Я работала на Upwork несколько лет, но в те времена он звался oDesk. Мне нравилось =) Потом надоел фриланс, и я ушла в бизнес. Если надоест бизнес, вернусь на Upwork.

  • @yakut54
    @yakut54 4 года назад

    лайк!!!!

  • @e-benz
    @e-benz 4 года назад

    жирок!! нужно больше видео

  • @wizardoflightnings6841
    @wizardoflightnings6841 4 года назад +1

    БОЛЬШОЙ
    ТЯЖЁЛЫЙ
    ЦЕННЫЙ
    КОММЕНТАРИЙ
    заменяет тысячу обычных маленьких комментариев

    • @AidaDrogan
      @AidaDrogan  4 года назад

      =D нам нужно БОЛЬШЕ комментариев

  • @kr0tyara
    @kr0tyara 2 года назад

    Жалко, что у гифок обрезается только первый кадр :(

  • @jsboy5235
    @jsboy5235 Год назад

    подскажите если стоит апач и nginx вместе... и как я понял апач перекрывает энджинкс, в общем ваша инструкция не сработала

  • @СергійНіколайчук-с3с

    вопросик: умеет ли nginx делать так как ngrok - делать локальный веб-сервер доступным в сети, по урл как на любой обычный сайт?

  • @МаксимКоковин-и9к
    @МаксимКоковин-и9к 4 года назад

    Как интересно!!! Но я не совсем понял кто такой Обратный Прокси((( Это гном какой-то???

    • @AidaDrogan
      @AidaDrogan  4 года назад +4

      Обратный Прокси Васильевич - заслуженный работник веб-сферы, дважды кавалер Ордена Маскировки Серверов =) Это такой гном, который берёт запрос пользователя и передаёт его на другой сервер (но тихонько, так, чтобы пользователь ничего не понял). Потом Прокси Васильевич получает ответ от проксируемого сервера и отдаёт пользователю обратно. В этом видео картинка с котиком пришла с сервера на порту 8888, который был запроксирован на порту 80. В случае с Node.js мы поднимаем сервер на порту 3000 и передаём на него запросы с основного сервера NGINX. Бэкэнд крутится на Node.js, а статические ресурсы отдаёт NGINX. А выглядит это как единый сайт.

    • @МаксимКоковин-и9к
      @МаксимКоковин-и9к 4 года назад

      @@AidaDrogan спасибо))) оказывается, это вполне законопослушный гражданин) попробую с ним познакомиться.

  • @somedayQ
    @somedayQ 4 года назад

    снега нет(

    • @AidaDrogan
      @AidaDrogan  4 года назад

      Главное, чтобы зима не решила наверстать упущенное в мае =D

  • @zp00v0518
    @zp00v0518 4 года назад

    не понял, зачем нужен был 2-й сервер, какая от него польза?

    • @AidaDrogan
      @AidaDrogan  4 года назад +4

      Второй сервер занимается проксированием и кэшированием. Если закэшировать запросы на работу с картинками, можно здорово повысить производительность и не обрабатывать каждый раз изображение. Если у прокси-вервера нашёлся кэш, он его отдаст и не будет беспокоить Image Filter. Кроме того, можно назначить целую группу серверов для обработки изображений (и это, конечно, будут физически другие машины), тогда их нужно описать группой в proxy_pass. А это видео - демка, в которую хотелось впихнуть побольше =)

  • @eugenex8892
    @eugenex8892 3 года назад

    Вижу бессмысленным это видео в связи с тем что смена размера картинки свободно реализуется почти на любом языке программирования. И даже не смотря на это, можно спокойно реализовать схожий функционал на ngnix-lua или openresty. После не изучая баги типо /img/MAXINT/котик.png

  • @iGotton
    @iGotton 4 года назад

    +

  • @adrtalladi2404
    @adrtalladi2404 4 года назад

    Приглашаем в Дискорд-чат сообщества "АйТиБорода".
    Тут тебя ждёт ламповое общение в кругу единомышленников: Начинающих программистов и опытных разработчиков с участием русскогоязычных IT-блогеров :) RUclips
    Полезные ссылки нашего сообщества:
    Стена на RUclips - ruclips.net/user/itbeardcommunity
    RUclips - ruclips.net/user/itbeard
    Discord - discord.gg/tWbt4sS
    Телеграм : t.me/itbeard_chat

  • @Vimble
    @Vimble 4 года назад

    Почему я раньше тебя нк нашёл?

    • @AidaDrogan
      @AidaDrogan  4 года назад +1

      Вспомнилась бессмертная цитата «Меня трудно найти, легко потерять и невозможно забыть» ;) Добро пожаловать на канал. Рада быть полезной!

    • @Vimble
      @Vimble 4 года назад

      @@AidaDrogan)

  • @LuckyStilet1
    @LuckyStilet1 3 года назад

    Консоль в хроме еще окрывается contrl + shift + i

  • @МаксимКоковин-и9к
    @МаксимКоковин-и9к 4 года назад

    И как его совместить с nodejs

  • @yanmandev
    @yanmandev 4 года назад

    Спасибо, полезное видео