jpeg_filter
在 NGINX 的 `location` 块中,`jpeg_filter` 指令用于启用或禁用用于处理图像的 JPEG 过滤模块。
NGINX JPEG filter module
·
location
语法jpeg_filter on | off;
默认值off
上下文location
参数flag
说明
jpeg_filter 指令控制 NGINX 中 JPEG 过滤模块的启用情况,允许服务器对所提供的 JPEG 图像进行实时修改。当启用(设置为 on)时,该模块使用 libmodjpeg 库应用各种转换,例如叠加效果(可在原始 JPEG 之上添加图像或水印),而不修改底层文件。这在需要动态调整的场景中特别有用,例如在向用户交付图像时添加徽标或水印,从而避免预先处理所有已有图像的需求。
该指令可在 location 块中设置,参数为简单开关:on 启用模块,off 禁用模块。要使过滤器正常工作,必须确保适当的上下文和依赖项已就绪,尤其是与图像处理和内存设置相关的周边配置。通过优化图像并有效处理它们,NGINX 可以快速提供被修改的图像,而不会给后端进程增加额外负担。
使用 jpeg_filter,管理员可以根据服务器状态、用户角色或应用需求方便地管理图像输出。但如果处理失败,可能会回退到提供原始图像,这取决于是否启用了 jpeg_filter_graceful,从而为保持用户体验的一致性和可靠性提供额外冗余。
配置示例
location /images {
jpeg_filter on;
jpeg_filter_effect grayscale;
jpeg_filter_dropon_file /path/to/logo.png;
}⚠
确保 libmodjpeg 已正确安装并可访问;否则该过滤器将无法工作。
⚠
请注意,启用 JPEG 过滤器可能会由于实时图像处理而增加服务器负载。
⚠
在使用该过滤器的处理功能时请谨慎,因为错误的设置可能导致性能问题或图像质量下降。