Ik heb Ubuntu 16.04 met Apache 2.4, en heb mod_brotli geinstalleerd. In principe werkt het prima. Maar in de praktijk - een browser dus - werkt het totaal niet.
Als ik doe:
Dan is de response keurig brotli compressed. Briljant!
Maar als ik de Accept-Encoding header zet zoals alle browsers dat doen:
Dan is de response weer gzip compressed (niet eens deflate dus
)
Hoe kan ik tegen Apache zeggen in welke volgorde hij naar de Accept-Encoding moet kijken? Ik wil dat hij eerst brotli doet als dat erbij staat, zo niet dan deflate als dat erbij staat, en anders terugvallen naar default gedrag.
Maar ik kan dus nergens vinden hoe je iets van prioriteit of volgorde kunt aangeven.
Deflate staat zo geconfigd:
Dat is trouwens de default. Dit krijg je erbij als je mod_deflate installeert en enablet.
Dus Brotli heb ik ook zo geconfigd:
Na het inprikken van al deze configuratie heb ik uiteraard de apache2 service herstart.
Volgens mij heb ik dat netjes volgens de documentatie van mod_brotli gedaan... Maar hoe los ik nou op dat ie de "goeie" pakt?
Als ik doe:
code:
1
| curl -i -H "Accept-Encoding: br" https://localhost/ |
Dan is de response keurig brotli compressed. Briljant!
Maar als ik de Accept-Encoding header zet zoals alle browsers dat doen:
code:
1
| curl -i -H "Accept-Encoding: gzip, deflate, br" https://localhost/ |
Dan is de response weer gzip compressed (niet eens deflate dus
Hoe kan ik tegen Apache zeggen in welke volgorde hij naar de Accept-Encoding moet kijken? Ik wil dat hij eerst brotli doet als dat erbij staat, zo niet dan deflate als dat erbij staat, en anders terugvallen naar default gedrag.
Maar ik kan dus nergens vinden hoe je iets van prioriteit of volgorde kunt aangeven.
Deflate staat zo geconfigd:
code:
1
2
3
4
5
6
7
8
| <IfModule mod_deflate.c> <IfModule mod_filter.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css AddOutputFilterByType DEFLATE application/x-javascript application/javascript application/ecmascript AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/xml </IfModule> </IfModule> |
Dat is trouwens de default. Dit krijg je erbij als je mod_deflate installeert en enablet.
Dus Brotli heb ik ook zo geconfigd:
code:
1
2
3
4
5
6
7
8
| <IfModule mod_brotli.c> <IfModule mod_filter.c> AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/xml text/css AddOutputFilterByType BROTLI_COMPRESS application/x-javascript application/javascript application/ecmascript AddOutputFilterByType BROTLI_COMPRESS application/rss+xml AddOutputFilterByType BROTLI_COMPRESS application/xml </IfModule> </IfModule> |
Na het inprikken van al deze configuratie heb ik uiteraard de apache2 service herstart.
Volgens mij heb ik dat netjes volgens de documentatie van mod_brotli gedaan... Maar hoe los ik nou op dat ie de "goeie" pakt?
日本!🎌