У меня есть игра JavaScript, которая в основном состоит из файла .html и .data. Если я сжимаю их с помощью gzip, их размер уменьшается до 25%. Поэтому я хочу это сделать.
Я не уверен на 100%, но я думаю, что использование mod_gzip или mod_deflate делает сжатие "на лету", постоянно теряя время процессора, потому что контент не изменяется.
Так что я хотел бы прекомпилировать Контент. Поэтому я помещал .gz рядом с несжатыми файлами и добавлял правила перезаписи в .htaccess:
RewriteEngine on
# If client accepts compressed files
RewriteCond %{HTTP:Accept-Encoding} gzip
# and if compressed file exists
RewriteCond %{REQUEST_FILENAME}.gz -f
# send .html.gz instead of .html
RewriteRule ^(.+)\.(html|css|js|data)$ $1.$2.gz [T=text/$2,E=GZIP:gzip,L]
Header set Content-Encoding gzip env=GZIP
Redirect работает, я могу запросить game.html и получить deliviered game.html.gz. Однако браузер не просто отображает его. Вместо этого он спрашивает, где сохранить файл. Как я могу это исправить? Или, может быть, есть еще один способ достичь моей цели?