.htaccess 中的 mod_deflate 导致服务器出现 500 错误

.htaccess 中的 mod_deflate 导致服务器出现 500 错误

当我在 Apache 2.2.23 下的 .htaccess 中启用 mod_deflate 时,出现站点范围的 500 服务器错误。

以下是我使用的代码:

<IfModule mod_deflate.c>
# Don't compress certain content under Apache 2.x
<Location />
    SetOutputFilter DEFLATE
    SetEnvIfNoCase Request_URI  \
    \.(?:gif|jpe?g|png)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI  \
    \.(?:exe|t?gz|zip|gz2|sit|rar)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI \/(shipments)\.php no-gzip dont-vary
    SetEnvIfNoCase Request_URI \/(modules)\/ no-gzip dont-vary
</Location>

AddOutputFilterByType DEFLATE text/* application/x-javascript application/javascript application/x-httpd-php application/rss+xml application/atom_xml

<ifmodule mod_headers.c>
    # properly handle requests coming from behind proxies
    Header append Vary User-Agent
</ifmodule>
</IfModule>

知道可能导致错误的原因是什么吗?

答案1

问题出在“位置”标签上。它不属于那里。

答案2

猜测.....尝试删除嵌套的 ifmodule 构造并看看会发生什么。

相关内容