Apache deflate в.htaccess не работает

У меня есть виртуальный хост и я включил AllowOverride All, Я знаю, что это работает, так как правила переписывания в /var/www/site/web/.htaccess выполняются (это приложение Symfony). Однако, когда у меня есть DEFLATE Править там, это не работает. Например просто:

AddOutputFilterByType DEFLATE application/json

Однако, если я добавлю это в конфигурацию своего виртуального хоста, это сработает. Это выглядит так:

/etc/apache2/sites-enabled/site.dev.conf

<VirtualHost *:80>
    ServerName site.dev

    DocumentRoot /var/www/site/web

    <Directory /var/www/site/web>
        AllowOverride All
        Require all granted
    </Directory>

    # Setup passthrough to phm-fpm and auth header fix
    ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/site/web/$1
    SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

    ErrorLog /var/log/apache2/site_error.log
    CustomLog /var/log/apache2/site_access.log combined
</VirtualHost>

Любые предложения относительно того, почему это не работает? Я знаю, что лучше всего применять такие правила в виртуальном хосте или, что еще лучше, в основном конфиге apache. Но мне просто любопытно, почему это не работает, если поместить в .htaccess

Это работает Apache 2.4

1 ответ

Вы проксируете, поэтому каталог файловой системы не задействован, поэтому вы ничего не можете поместить в htaccess и использовать его на самом деле.

Зачем вам беспокоиться о настройке DEFLATE в htaccess, если вы можете редактировать реальную конфигурацию?

Если вы настаиваете на использовании htaccess, вы можете использовать метод SetHandler для настройки mod_proxy_fcgi.

Другие вопросы по тегам