trim
'trim' 指令从 HTML 响应中移除不必要的空白和注释。
Filter that strips whitespace and comments from HTML responses
·
httpserverlocation
语法trim on | off;
默认值off
上下文http, server, location
参数1
说明
'trim' 指令在 NGINX 中属于 ngx_http_trim_filter 模块,旨在通过剔除多余的空白(空格、制表符、换行)和注释来优化 HTML 响应。该过滤过程使用状态机解析 HTML,确保某些元素(例如被 <pre>、<textarea>、<script> 和 <style> 标签包裹的部分)在不被修改的情况下得到保留。除了为传输优化 HTML 外,它还旨在保持那些空白重要的元素的视觉完整性,例如 JavaScript 代码和 CSS 样式中的内容。该指令可以通过语法 trim on; 或 trim off; 启用或禁用,同时也接受变量,允许根据 NGINX 中的条件进行动态配置。该指令的默认状态为 off,意味着除非显式指定,否则不会进行修剪。重要的是,任何带有 URL 参数 http_trim=off 的请求都会禁用修剪功能,从而保留该请求的不经过滤的 HTML 响应。因此,根据应用的具体内容和需求配置修剪非常重要,需要仔细考虑哪些 MIME 类型会从此优化中受益,同时不牺牲必要的格式化。
配置示例
location / {
trim on;
trim_js on;
trim_css off;
}⚠
确保 'trim' 指令不会影响那些需要保留空白的元素,例如某些 HTML 标签中的内容。
⚠
在 'trim' 指令中使用变量时要小心,若配置不当可能导致意外行为。
⚠
请记住,如果请求包含参数 'http_trim=off',该指令将被覆盖。