继续讨论 客户端图像优化默认启用 :
我是一家本地摄影师自托管 Discourse 实例的管理员,我们主要上传高质量媒体。我想更改编辑器中图像缩放的默认宽度,但在设置中找不到相关选项。
Ask Bot 提示我查找 composer media optimization image resize dimensions threshold,但我怀疑该设置是否已被弃用或隐藏,因为我目前只能找到 composer media optimization image enabled 这一项设置。
简单来说,我只希望使用编辑器上传的图像最大宽度被调整为 1440 像素,而不是 1920 像素,并且最好能提供一个选项,仅对图像的较长边进行缩放(例如,竖版图像应按高度而非宽度进行缩放)。
版本 2026.5.0-latest (af1090fa6f )
Lilly
(Lillian )
2026 年5 月 1 日 15:58
2
gallery3540:
图片调整尺寸阈值
这是一个隐藏设置,因此可以在 Rails 控制台中进行修改。
但我觉得需要将其添加到此处:
This is a reference guide for describing all available Hidden Site Settings.
Required user level: Administrator
Hidden site settings in Discourse are advanced configuration options that are not available through the standard admin interface. They provide additional flexibility to customize the functionality of your Discourse instance.
For additional information about modifying hidden site settings, see: Enable Hidden Site Settings .
Be…
修改方法如下:
cd /var/discourse
./launcher enter app
rails c
SiteSetting.composer_media_optimization_image_resize_dimensions_threshold = 1440
exit
有没有办法验证我是否配置正确?硬刷新(Ctrl+F5)似乎没有生效,所以我重新构建了应用,但也没有任何变化。图片仍然被压缩到 1920 像素。
/var/www/discourse# rails c
正在加载生产环境 (Rails 8.0.5)
discourse(prod)> SiteSetting.composer_media_optimization_image_resize_dimensions_threshold
=> 1440
Lilly
(Lillian )
2026 年5 月 1 日 16:50
7
再次在 Rails 控制台中,当你输入:SiteSetting.composer_media_optimization_image_resize_dimensions_threshold 时,它会返回什么值?
我刚刚测试了这项具体更改,它已更新。
它返回 1440
这张图片的原始分辨率为 3089x2048,以下是刚刚作为测试上传后它被调整到的尺寸。
Falco
(Falco)
2026 年5 月 1 日 17:00
9
composer_media_optimization_image_resize_dimensions_threshold 控制其触发时机。
若要将其调整至 1440 像素,请将 composer_media_optimization_image_resize_width_target 设置为该值。
嗯,不行。
我把这两个值都设为 1440,然后为了保险起见执行了 /var/discourse/launcher rebuild app,但图片仍然被缩放到 1920。
编辑:实际上,在执行重建并返回 Rails 后,这两个变量又变回未定义状态。是否有某个进程将它们覆盖回了默认值?
实际上,即使退出 Rails 再重新进入,我也会遇到以下问题:
discourse(prod)> composer_media_optimization_image_resize_dimensions_threshold
(discourse):1:in '<main>': undefined local variable or method 'composer_media_optimization_image_resize_dimensions_threshold' for main (NameError)
Falco
(Falco)
2026 年5 月 1 日 17:50
11
检查设置的方式不对,你需要在设置名称前加上 SiteSetting.。