Использовать файл gzip локально

У меня есть сжатый файл gzip в каталоге моего сайта. Я никогда не работал с gzip, но не похоже, чтобы он работал на локальной машине.

Я запускаю локальный сервер с BrowserSync для просмотра моего сайта, как я могу заставить браузер прочитать мой main.css.gz файл?

Любая помощь в этом приветствуется.

Заранее спасибо!


person realph    schedule 21.05.2015    source источник


Ответы (1)


Вы должны использовать хук промежуточного программного обеспечения конфигурации browserSync, где вы проверяете определенный тип файла (в вашем случае .gz) и устанавливаете соответствующие заголовки Content-Encoding и Content-Type для доставки.

  {
    'browsersync': {
        'taskName': {
            'options': {
                'server': {
                    'middleware': [
                        function (req, res, next) {
                            if(req._parsedUrl.pathname.match(/\.gz$/g)){
                              res.setHeader('Content-Type', 'text/html');
                              res.setHeader('Content-Encoding', 'gzip');
                            }
                            next();
                        }
                    ]
                }
            }
        }
    }
}

Возможно, не рекомендуется полагаться на переменную _parsedUrl (поскольку знак подчеркивания объявляет ее частной), и вместо нее следует использовать url, но ради простоты я буду придерживаться ее.

person Marcello di Simone    schedule 20.07.2015