Я хочу, чтобы Apache отправлял статические файлы по gzip'у по проводам, но также хочу, чтобы Apache не всегда gzip их снова и снова. Поэтому я подумал, что нельзя будет доставить файл .gz, если он существует. Эта установка:
Структура файла:
static/
|
|--- style.css
|
\--- style.css.gz
И следующее в .htaccess:
правило mod_rewrite:
RewriteCond %{REQUEST_FILENAME}.gz -s
RewriteRule ^(.+) $1.gz [L]
И этот параметр:
AddEncoding x-gzip .gz
На самом деле, это работает, поскольку файл .gz отправляется вместо .css, если запрос идет /static/style.css
. Проблема только в том, что файл поставляется как «application / x-gzip», а не как «text / css». Использование флага T mod_rewrite не меняет этого. Ни одно не делает явное
AddType text/css .css
У кого-нибудь есть идеи, как мне добиться желаемого поведения? Или это не нужно по какой-то причине, которую я не считал?
РЕДАКТИРОВАТЬ: Существует дополнительная трудность: отправка исходного файла клиентам без поддержки gzip. Кто-нибудь знает, как это может работать?