Т.е. картинки вот такого плана
photos/get_image/original/кэш.jpg
photos/get_image/file/кэш.jpg
раздаются через php , а лучше бы их сделать статичными. Из-за этого возникает неэффективное использование ресурсов. А права доступа можно как-то иначе реализовать
|
Да, это сделано чтобы контролировать права доступа.
Данный метод реализации гарантирует полноценную защиту данных.
Можно привести другие альтернативные способы реализации ?
Rules → http://www.boonex.com/terms |
При таком способе на каждую картинку используется один php процесс и даже при 100-200 запросах к картинкам (а картинок можно вставлять по несколько 10 штук на страницы). Например, используя адреса картинок мы делаем обзор с картинками и при каждом обращении к такой страницы происходит запуск нескольких процессов php . каждый процесс php съедает приличное количество оперативной памяти и она быстро заканчивается. А nginx может один все это дело раздать.
Реализовать - например, использовать тот же кэш. Настройками веб-сервера запретить просмотр содержимого каталога, а названия файлов сделать такого вида - кэш.jpg В ручную не подберешь.
|
Согласен, что такой способ нагружает сервер.
Раньше так и было - картинки раздавались напрямую, но потребовалась более надежная защита данных.
Чтобы убыстрить текущий вариант предлагаю ввести браузерный кэш для картинок, вот тут описано как это сделать:
http://dolphin7.com/optimization/add-last-modified-images/
Rules → http://www.boonex.com/terms |
Ваш вариант немного поможет, но не решает проблему в целом. Публичные фото точно нет смысла раздавать через php. Думаю, что не очень трудно реализовать, чтобы публичные фото раздавались статикой, а закрытые через php. Это будет правильная конструкция. |
На самом деле не так легко - тогда нужно будет публичные файлы класть в одну папку, а приватные в другую защищенную папку. Затем при операциях изменения доступа перемещать файлы туда-сюда. Также менять везде ссылки на файлы.
Все это очень проблематично в нынешней системе.
В Дельфине 8 - уже используется централизованная система хранения файлов - и там возможно будет сделать (с помощью небольших изменений) чтобы файлы раздавались на прямую, а не через пхп - http://www.boonex.com/n/dolphin-8-storage-objects
Rules → http://www.boonex.com/terms |
Пускай хоть в 8 версии, но надо сделать, чтобы такое было доступно из коробки. Я на себе ощутил все негативное влияние такого способа раздачи. |
еще как вариант - возможность выбора в настройке модуля каким способом отдавать фото. Кому важнее выдержать нагрузки - тот статику включил бы, кому защита фоток - динамику |
Хорошо, учтем, спасибо за предложения. Rules → http://www.boonex.com/terms |