mod_ext_filter 和 mod_filter 的区别?
Difference between mod_ext_filter and mod_filter?
我使用 this 指南在 CentOS 6.4 服务器上安装了 PHP 5.6.17
。 Contao 安装在该服务器上 运行。 Contao 在其默认的 .htaccess 中附带了这些指令:
##
# Gzip compression
# @see https://github.com/h5bp/html5-boilerplate
##
<IfModule mod_deflate.c>
<IfModule mod_filter.c>
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml application/atom+xml
AddOutputFilterByType DEFLATE image/x-icon image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype
</IfModule>
</IfModule>
这将启用自动 Gzip 压缩。但是,在该服务器上,我注意到默认情况下未启用 mod_filter
扩展,即使它应该是 php56w-common
包的一部分(请参阅 https://webtatic.com/packages/php56/)。我确实注意到启用了 mod_ext_filter
扩展 - 我相应地更改了我的指令(将 mod_filter
替换为 mod_ext_filter
)这似乎有效。
我以前从未见过 mod_ext_filter
所以我想知道这两个模块之间的确切区别是什么(以及为什么更常见的 (?) mod_filter
模块在 [=15] 中不可用=] CentOS 的软件包)。
“我相应地更改了指令(将 mod_filter 替换为 mod_ext_filter),这似乎有效。”我无法想象这可能意味着什么,但这两个模块使用完全不同的指令并用于不同的目的。 mod_ext_filter
允许您在您选择的外部脚本中编写过滤器。 mod_filter
运行从已编译模块加载的过滤器。
Apache Module mod_filter
Description: Context-sensitive smart filter configuration module
https://httpd.apache.org/docs/2.2/mod/mod_filter.html
Apache Module mod_ext_filter
Description: Pass the response body through an external program before delivery to the client
https://httpd.apache.org/docs/2.2/mod/mod_ext_filter.html
如果——我怀疑——你没有使用任何一个模块,为什么要加载它们?
编辑:您指的是 PHP 过滤模块吗?如果是这样,那将永远内置于 PHP 中。 运行 php -m | grep filter
自行查看列表。
我使用 this 指南在 CentOS 6.4 服务器上安装了 PHP 5.6.17
。 Contao 安装在该服务器上 运行。 Contao 在其默认的 .htaccess 中附带了这些指令:
##
# Gzip compression
# @see https://github.com/h5bp/html5-boilerplate
##
<IfModule mod_deflate.c>
<IfModule mod_filter.c>
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml application/atom+xml
AddOutputFilterByType DEFLATE image/x-icon image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype
</IfModule>
</IfModule>
这将启用自动 Gzip 压缩。但是,在该服务器上,我注意到默认情况下未启用 mod_filter
扩展,即使它应该是 php56w-common
包的一部分(请参阅 https://webtatic.com/packages/php56/)。我确实注意到启用了 mod_ext_filter
扩展 - 我相应地更改了我的指令(将 mod_filter
替换为 mod_ext_filter
)这似乎有效。
我以前从未见过 mod_ext_filter
所以我想知道这两个模块之间的确切区别是什么(以及为什么更常见的 (?) mod_filter
模块在 [=15] 中不可用=] CentOS 的软件包)。
“我相应地更改了指令(将 mod_filter 替换为 mod_ext_filter),这似乎有效。”我无法想象这可能意味着什么,但这两个模块使用完全不同的指令并用于不同的目的。 mod_ext_filter
允许您在您选择的外部脚本中编写过滤器。 mod_filter
运行从已编译模块加载的过滤器。
Apache Module mod_filter
Description: Context-sensitive smart filter configuration module
https://httpd.apache.org/docs/2.2/mod/mod_filter.html
Apache Module mod_ext_filter
Description: Pass the response body through an external program before delivery to the client
https://httpd.apache.org/docs/2.2/mod/mod_ext_filter.html
如果——我怀疑——你没有使用任何一个模块,为什么要加载它们?
编辑:您指的是 PHP 过滤模块吗?如果是这样,那将永远内置于 PHP 中。 运行 php -m | grep filter
自行查看列表。