Назад | Перейти на главную страницу

Сжимайте и размещайте большие объемы статического HTML

В настоящее время у меня есть небольшой веб-сайт, который используется для размещения большого количества (сгенерированного) статического HTML. Проблема в том, что дисковое пространство ограничено, а размер HTML увеличивается на 1 ГБ в неделю. (Файлы сгруппированы в каталоги, примерно по 500 файлов в каждом, а их общий размер составляет 10–100 МБ. Файлы сжимаются очень хорошо [менее 10%])

В идеале я ищу способ сжать все файлы HTML на жестком диске, но при этом легко их обслуживать.

Mod_gunzip, упомянутый Мэтт Симмонс не существует для Apache 2.x. Замена, упомянутая разработчиком, заключается в использовании модуля Apache mod_ext_filter. Я не тестировал, но похоже, что будет довольно легко создать фильтр, распаковывающий файлы для обслуживания.

Еще вам следует учесть, что большинство современных браузеров принимают контент, сжатый с помощью gzip. Возможно, вам удастся сжать ваши файлы и обработать файлы с gzip, не делая ничего особенного. Вот ссылка на сайт с некоторыми подробностями.

Сжатая файловая система - Другое решение - иметь дело со сжатием на уровне ниже веб-сервера, а файлы - на уровне файловой системы.

Я еще не закончил, но вы можете попробовать что-нибудь вроде предохранитель - так что отделите свои www если вы еще этого не сделали, и сделайте это сжатым файлом fs.

Очевидно, это будет стоить вам некоторой производительности, но если процессор приличный, то все будет в порядке.

Вы смотрели mod_gunzip? Я слишком новичок, чтобы ссылаться на него, но поиск в Google должен указать вам правильное направление.

Вы можете обернуть все свои страницы сценарием, который выглядит примерно так:

bzcat $ 1.bz2

Где $ 1 - это запрошенный файл. Быстрый скрипт PHP / Perl / любой другой может довольно эффективно извлечь путь из переменных запроса, и готово.

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

Один из ответов - запустить веб-сайт на хосте Windows и просто сжать файловую систему NTFS.

Другой вариант - система OpenSolaris с ZFS.

Большинство браузеров понимают сжатые HTML-страницы. Одним из решений является сжатие каждой страницы с помощью gzip и добавление на ваш веб-сервер заголовка Content-Encoding: gzip к каждому ответу.

заархивируйте все файлы и используйте Options +MultiViews при использовании Apache.