Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Все вопросы » Общие вопросы по вёрстке » Как сжать HTML страницы?

Как сжать HTML страницы?


     Общие вопросы по вёрстке, Шаблоны (TPL), Хаки    3273

вопрос
Ребят подскажите как сжать HTML страницу по средством .htaccess или другими методами..

Пробывал в .htaccess добавить такие приказы:


<ifModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/css text/javascript application/javascript application/x-javascript
</ifModule>

<IfModule mod_deflate.c>
AddEncoding gzip .gz
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE application/rss+xml
BrowserMatch "MSIE [456]" no_gzip dont-vary
BrowserMatch "SV1;" !no_gzip !dont-vary
BrowserMatch "Opera" !no_gzip !dont-vary
BrowserMatch "Firefox/[0-3]\." gzip-only-text/html
BrowserMatch "Firefox/3\.[1-9]" !gzip-only-text/html
BrowserMatch "Chrome/2" gzip-only-text/html
BrowserMatch "Safari" gzip-only-text/html
BrowserMatch "Konqueror" gzip-only-text/html
</IfModule>

<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text\.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image\.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</IfModule>

BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html


Очистил кэш, перезагрузил главную страницу, в браузере "просмотреть код", вижу что код не изменился... кто подскажет как это сделать правильно ?

Ответа пока нет


3 комментария

nowheremany
Эксперт

nowheremany - -

Он и не должен меняться.

Сжатие страницы - работает между сайтом и браузером. После того как браузер получал сжатые данные, он их распаковывает и генерит страницу для показа пользователю, в исходной странице браузера можно смотреть распакованный код, а не набор символов как вы хотите.

Благодарность принимаю тут Связь

over
Юзер

over - -

Так мне нужно чтоб на выходе браузер отдавал сжатую версию кода, тобишь без пробелов, и в одну строку

пробывал в index.php заменить @ob_start(); на это:

function sanitize_output($buffer) {

    $search = array(
        '/\>[^\S ]+/s',  // strip whitespaces after tags, except space
        '/[^\S ]+\</s',  // strip whitespaces before tags, except space
        '/(\s)+/s'       // shorten multiple whitespace sequences
    );

    $replace = array(
        '>',
        '<',
        '\\1'
    );

    $buffer = preg_replace($search, $replace, $buffer);

    return $buffer;
}

@ob_start("sanitize_output");


все равно ничего не выходит (( DLE 10.5

nowheremany
Эксперт

nowheremany - -

Таки с какого он должен заменить какието данные? сжатие имеется ввиду для браузера, а не для самого HTML кода. То что вы делаете - работать не будет. Максимум что можно сделать - это убрать символ табуляции и перевода каретки, и в этом же случае могут не работать некоторые JS, если же убирать пробелы - накроется верстка

Благодарность принимаю тут Связь

Похожие вопросы

наверх