Изменение размера изображений вне сервера

У меня вопрос об изменении размера изображений. Я хочу использовать офлайн-инструмент для сжатия изображений. Если я скачаю загруженные файлы, изменю их размер, удалю их с сервера и затем загрузю структуру обратно тем же способом, достаточно ли будет выполнить ./launcher rebuild app и rebake posts?

Какую проблему вы пытаетесь решить?

с точно такими же именами файлов? И даже в этом случае могут возникнуть проблемы с хешами SHA файлов.

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

Я хочу, чтобы все оригиналы были сжаты до размера менее 100 КБ без изменения разрешения. Я нашел сайт, который делает это без проблем, чтобы сэкономить место на сервере. Имя файла я могу массово переименовать, удалив расширение, которое он добавляет.

Если вы планируете разрешить пользователям вашего форума загружать изображения, вам нужно решение, которое будет работать в будущем, а не только в прошлом. Поэтому стоит разобраться, какие настройки предлагает Discourse, чтобы сэкономить как можно больше места в рамках ваших ограничений.

Я рекомендую хранить изображения на S3, чтобы стоимость места не была для вас такой важной. Но это не поможет.

По-моему, вам просто нужно изменить max_image_height и max_image_width, а также, возможно, max_image_size_kb.

Я уже изменил размер, который они могут загружать, но у меня всё ещё много свободного места. Ранее меня блокировали в S3, и я полагаю, что это было связано с моим местоположением на тот момент, но они так и не объяснили причину. Я пытался связаться с ними, но ответа не получил. Я не хочу тратить время на общение с ними.

Сейчас существует множество провайдеров S3. См. Настройка провайдера объектного хранилища, совместимого с S3, для загрузки файлов.

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

Как это вообще возможно? Если изображение изменяется по размеру, то и его разрешение меняется. Это одно и то же. Или я неправильно понял вопрос?

TS означает: применить более высокое соотношение сжатия (JPEG). Это сохранит исходные ширину и высоту, но уменьшит размер файла.

В разделе Настройки → Файлы есть несколько соответствующих параметров:

  • качество повторного сжатия исходных JPG
  • качество конвертации PNG в JPG
  • качество предпросмотра изображений в формате JPG
  • качество кодирования изображений при оптимизации медиа в редакторе

Для исторических файлов внешняя служба не требуется. Вы можете выполнить сжатие на сервере, пройдя по всем загруженным файлам и запустив команду:

mogrify -quality XX filename.jpg, где XX — процент качества.

Тем не менее, я согласен с @pfaffman: лучше сэкономить на затратах на хранение, выбрав более дешёвую услугу хранения. То, что считается приемлемым качеством изображений сегодня, может не подойти через 5 лет, и вы пожалеете о принятом решении. Ведь после снижения качества изображения пути назад уже не будет.