Подсистема балансировки нагрузки уровня 7 позволила бы Вам выделять те клиенты, которые считают 'высокой стоимостью' к кластеру/машине, который настраивается для обработки их определенных запросов. Я предполагаю, что это - 'занятой' клиент, который делает долю львов запросов и разделяет их к их собственному серверу, то, почему Вы считали предоставление им отдельным URL. С подсистемой балансировки нагрузки уровня 7, linuxvirtualserver.org, Вы могли отфильтровать конкретные URL и иметь довольно легкое для обслуживания системы.
В то время как Вы в конечном счете хотите решить проблему, правильный путь, с помощью чего-то вроде этого мог бы купить Вас достаточно времени.
Хорошо, извините за ответ на мой собственный ответ так скоро после предложения награды, но я наконец-то узнал, как достичь того, что хочу. Мое последнее изменение моего вопроса было близко, но недостаточно.
Оказалось, я мог злоупотребить тем фактом, что mod_rewrite
позволяет мне устанавливать MIME-тип перезаписанного пути ( T =
), чтобы применить мой фильтр (используя mod_ext_filter
) с помощью директивы AddOutputFilterByType
, например:
RewriteRule ^(.*?\.ext)\.gz$ $1 [L,T=application/my-file-type]
ExtFilterDefine gzip mode=output cmd="/bin/gzip"
<Location "/my-files">
AddOutputFilterByType gzip application/my-file-type
</Location>
Таким образом, фактический файл (например, somename.ext .gz
) не существует, но somename.ext
существует , а mod_rewrite
применяет фильтр условно, только когда приходит запрос с ] .ext.gz
расширение, но никогда, если запрос поступает под (существующим) именем.
Все, что я сделал, это изобрел свой собственный MIME-тип.
Как 200_success предложил в его / ее комментарии, я еще раз скорректировал это, чтобы было больше читаемый и полагающийся на переменную среды (условно установленную через mod_rewrite
):
RewriteRule ^(.*?\.ext)\.gz$ $1 [L,E=NEEDGZIP:1]
ExtFilterDefine gzip mode=output cmd="/bin/gzip" enableenv=NEEDGZIP
<Location "/my-files">
SetOutputFilter gzip
</Location>
mod_gzip должен помочь вам
http://sourceforge.net/projects/mod-gzip/
Вот несколько примеров конфигураций http://schroepl.net/projekte/mod_gzip/config.htm