Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Seo и внутренняя оптимизация dle. подборка статей и приемов

Тема в разделе "Модули DLE", создана пользователем DLEPlugins, 27 авг 2016.

27.08.16 в 05:00
25.07.22 в 13:06
201
96.206
20
  1. TopicStarter Overlay
    DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    [​IMG]
    Привет. Решил собрать в кучку разные приемы и статьи по сео и внутренней оптимизации сайта. Статья будет добавляться и обновляться.
    - Зачем это? Уже ж есть всякие паки-каки.
    - Я заманался людям помогать чинить сайты после всяких таких паков. Все описанное ниже я использую лично у себя и проверял на себе. Не пишу от фонаря как некоторые.
    Статья будет делиться на 2 части - SEO и внутренняя оптимизация, и делиться по пунктам.

    Внутренняя оптимизация:
    Включив кэш в браузерах посетителей скорость загрузки страницы существенно увеличится.
    Тестировал на загруженном всякими скриптами и всевозможными наворотами шаблоне + напихал тяжеловесных картинок.
    До проделанной манипуляции страница загружалась 1-2 секунды, после она загружается моментально.

    Открываем .htaccess в корне сайта. Находим

    PHP:
    RewriteEngine On
    ниже вставляем

    PHP:
    # Включаем кэш в браузерах посетителей
    <ifModule mod_headers.c>
        
    # Все html и htm файлы будут храниться в кэше браузера один день
        
    <FilesMatch "\.(html|htm)$">
            
    Header set Cache-Control "max-age=43200"
        
    </FilesMatch>
        
    # Все css, javascript и текстовые файлы будут храниться в кэше браузера одну неделю
        
    <FilesMatch "\.(js|css|txt)$">
            
    Header set Cache-Control "max-age=604800"
        
    </FilesMatch>
        
    # Все флэш файлы и изображения будут храниться в кэше браузера один месяц
        
    <FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$">
            
    Header set Cache-Control "max-age=2592000"
        
    </FilesMatch>
        
    # Отключаем кеширование php и других служебных файлов
        
    <FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
            
    Header unset Cache-Control
        
    </FilesMatch>
    </
    IfModule>
    Будет полезно тем, у кого одна новость пренадлежит нескольким категориям.

    Хак был разработан Олегом Александровичем a.k.a. Sander.

    По утверждению автора на посещаемом сайте увеличится потребление оперативной памяти, зато уменьшается время отклика, увеличивается скорость формирования запроса.
    По этому сами решайте ставить этот хак или нет! Лично я поставил его себе.

    Открыть файл engine/engine.php
    Найти код:
    PHP:
                        $where_category "category = '{$get_cats}'";

                    }

                }
    После него вставить:
    PHP:
                $db->query("SELECT id FROM ".PREFIX."_post WHERE {$where_category} AND approve=1" $where_date);
                
    $ids = array();
                while(
    $r $db->get_row()) $ids[] = $r['id'];
                if(
    count($ids)) $ids implode(',',$ids);
                else 
    $ids 0;
                
    $where_category "id IN ($ids)";


    SEO оптимизация DLE

    Хак был разработан Олегом Александровичем a.k.a. Sander.
    Говорят, что для СЕО плохо, когда страница ссылается сама на себя. А именно это происходит в спидбаре при просмотре категории.
    Данный фикс исправляет это дело.

    Открыть файл engine/modules/functions.php
    Найти строку:
    PHP:
    function get_breadcrumbcategories($id$separator="&raquo;") {
    Заменить на:
    PHP:
    function get_breadcrumbcategories($id$separator="&raquo;",$rec=false) {
    Тут же ниже найти строку:
    PHP:
    $parent_id $cat_info[$id]['parentid'];
    После нее вставить:
    PHP:
        global $cstart$dle_module;
        if(
    $rec OR $cstart>OR $dle_module!='cat'$list "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" $config['http_home_url'] . get_url$id ) . "/\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span></a></span>";
        else 
    $list $cat_info[$id]['name'];
        if(
    $parent_id){
            
    $parent get_breadcrumbcategories($parent_id,$separator,true);
            if(
    $parent$list $parent $separator " $list;
        }
        return 
    $list;
    Автор АлаичЪ и Gameer
    Открываем /engine/engine.php, находим код :
    PHP:
    $metatags['title'] = $nam_e $page_extra ' &raquo; ' $metatags['title'];
    Меняем на:
    PHP:
    $metatags['title'] = $nam_e $page_extra;
    Далее ищем :
    PHP:
    $metatags['title'] = $titl_e $page_extra ' &raquo; ' $config['home_title'];
    Меняем на :
    PHP:
    $metatags['title'] = $titl_e $page_extra;
    Далее ищем код :
    PHP:
    if ( $metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title'].$page_extra);
    Меняем на:
    PHP:
    if ($do == "cat" and $category != '' and $subaction == ''//если категория
    {
        if(
    $cat_info[$category_id]['metatitle'])
            
    $metatags['title'] = isset($page_extra) ? stripslashes($cat_info[$category_id]['metatitle']) . $page_extra stripslashes($cat_info[$category_id]['metatitle']);
        elseif(
    $metatags['header_title'])
            
    $metatags['title'] = isset($page_extra) ? stripslashes($metatags['header_title']) . $page_extra stripslashes($metatags['header_title']);
        else
            
    $metatags['title'] = isset($page_extra) ? stripslashes($cat_info[$category_id]['name']) . $page_extra stripslashes($cat_info[$category_id]['name']);
    }
    elseif (
    $dle_module == "main"//если главная страница
        
    $metatags['title'] = isset($page_extra) ? stripslashes($config['home_title']) . $page_extra stripslashes($config['home_title']);
    elseif (
    $metatags['header_title']) $metatags['title'] = stripslashes($metatags['header_title']);
    Автор Gameer
    Открываем /engine/engine.php, находим :
    PHP:
    if ($config['speedbar'] AND !$view_template ) {

        
    $s_navigation "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"{$config['http_home_url']}\" itemprop=\"url\"><span itemprop=\"title\">" $config['short_title'] . "</span></a></span>";

        if( 
    $config['start_site'] == AND $_SERVER['QUERY_STRING'] == "" AND !$_POST['do']) $titl_e "";

        if (
    intval($category_id)) $s_navigation .= {$config['speedbar_separator']} " get_breadcrumbcategories intval($category_id), $config['speedbar_separator'] );
        elseif (
    $do == 'tags') {

            if (
    $config['allow_alt_url']) $s_navigation .= {$config['speedbar_separator']} <span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" $config['http_home_url'] . "tags/\" itemprop=\"url\"><span itemprop=\"title\">" $lang['tag_cloud'] . "</span></a></span> {$config['speedbar_separator']} " $tag;
            else 
    $s_navigation .= {$config['speedbar_separator']} <span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"?do=tags\" itemprop=\"url\"><span itemprop=\"title\">" $lang['tag_cloud'] . "</span></a></span> {$config['speedbar_separator']} " $tag;

        } elseif (
    $nam_e$s_navigation .= {$config['speedbar_separator']} " $nam_e;

        if (
    $titl_e$s_navigation .= {$config['speedbar_separator']} " $titl_e;
        else {

            if ( isset(
    $_GET['cstart']) AND intval($_GET['cstart']) > ){

                
    $page_extra {$config['speedbar_separator']} ".$lang['news_site']." ".intval($_GET['cstart']);

            } else 
    $page_extra '';

            
    $s_navigation .= $page_extra;

        }

        
    $tpl->load_template 'speedbar.tpl' );
        
    $tpl->set '{speedbar}''<span id="dle-speedbar">' stripslashes $s_navigation ) . '</span>' );
        
    $tpl->compile 'speedbar' );
        
    $tpl->clear ();

    }
    Меняем на :
    PHP:
    if ($config['speedbar'] AND !$view_template ) {

        
    $s_navigation "<li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"{$config['http_home_url']}\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">" $config['short_title'] . "</span></a><meta property=\"position\" content=\"1\"></li>";

        if( 
    $config['start_site'] == AND $_SERVER['QUERY_STRING'] == "" AND !$_POST['do']) $titl_e "";

        if (
    intval($category_id))
        {
            
    $cat_breadcrumb explode("|"get_breadcrumbcategories intval($category_id), $config['speedbar_separator'] ));
            
    $s_navigation .= {$config['speedbar_separator']} " $cat_breadcrumb[0];
        }
        elseif (
    $do == 'tags') {

            if (
    $config['allow_alt_url']) $s_navigation .= {$config['speedbar_separator']} <li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"" $config['http_home_url'] . "tags/\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">" $lang['tag_cloud'] . "</span></a><meta property=\"position\" content=\"2\"></li> {$config['speedbar_separator']} <li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">" $tag "</span><meta property=\"position\" content=\"3\"></li>";
            else 
    $s_navigation .= {$config['speedbar_separator']} <li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"?do=tags\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">" $lang['tag_cloud'] . "</span></a><meta property=\"position\" content=\"2\"></li> {$config['speedbar_separator']} <li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">" $tag "</span><meta property=\"position\" content=\"3\"></li>";

        } elseif (
    $nam_e)
        {
            if(
    $dle_module == "showfull")
            {
                
    $cat_breadcrumb[1] = $cat_breadcrumb[1] + 1;
                
    $s_navigation .= {$config['speedbar_separator']} " "<li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">{$nam_e}</span><meta property=\"position\" content=\"{$cat_breadcrumb[1]}\"></li>";
            }
            else
            {
                
    $s_navigation .= {$config['speedbar_separator']} " "<li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">{$nam_e}</span><meta property=\"position\" content=\"2\"></li>";
            }
        }

        if (
    $titl_e)
        {
            if(isset(
    $cat_breadcrumb[1]) && !is_null($cat_breadcrumb[1]))
                
    $cat_breadcrumb[1] = $cat_breadcrumb[1] + 1;
            else
                
    $cat_breadcrumb[1] = 3;
            
    $s_navigation .= {$config['speedbar_separator']} <li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">{$titl_e}</span><meta property=\"position\" content=\"{$cat_breadcrumb[1]}\"></li>";
        }
        else {

            if ( isset(
    $_GET['cstart']) AND intval($_GET['cstart']) > ){
                
    $cat_breadcrumb[1]++;
                
    $page_extra {$config['speedbar_separator']} <li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">".$lang['news_site']." ".intval($_GET['cstart']) . "</span><meta property=\"position\" content=\"{$cat_breadcrumb[1]}\"></li>";

            } else 
    $page_extra '';

            
    $s_navigation .= $page_extra;

        }

        
    $tpl->load_template 'speedbar.tpl' );
        
    $tpl->set '{speedbar}''<ol vocab="http://schema.org/" typeof="BreadcrumbList">' stripslashes $s_navigation ) . '</ol>' );
        
    $tpl->compile 'speedbar' );
        
    $tpl->clear ();

    }
    Далее открываем /engine/modules/functions.php, находим :
    PHP:
    function get_breadcrumbcategories($id$separator="&raquo;") {

        global 
    $cat_info$config$PHP_SELF;

        if( ! 
    $id ) return;

        
    $parent_id $cat_info[$id]['parentid'];

        if( 
    $config['allow_alt_url'] ) $list "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" $config['http_home_url'] . get_url$id ) . "/\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span></a></span>";
        else 
    $list "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$id]['alt_name']}\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span></a></span>";

        while ( 
    $parent_id ) {

            if( 
    $config['allow_alt_url'] ) $list "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" $config['http_home_url'] . get_url$parent_id ) . "/\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$parent_id]['name']}</span></a></span>" {$separator} " $list;
            else 
    $list "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$parent_id]['alt_name']}\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$parent_id]['name']}</span></a></span>" {$separator} " $list;

            
    $parent_id $cat_info[$parent_id]['parentid'];

            if(
    $parent_id) {
                if( 
    $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
            }
        }

        return 
    $list;
    }
    Меняем на :
    PHP:
    function get_breadcrumbcategories($id$separator="&raquo;") {

        global 
    $cat_info$config$PHP_SELF$dle_module;

        if( ! 
    $id ) return;

        
    $parent_id $cat_info[$id]['parentid'];
        
    $first_id_p $parent_id;
        
    $i 1;
        while(
    $parent_id)
        {
            
    $i++;
            
    $parent_id $cat_info[$parent_id]['parentid'];
            if(
    $parent_id)
                if( 
    $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
        }

        
    $i += 1;
        
    $parent_id $first_id_p;
        if(
    $parent_id == 0)
        {
            
    $id_i 2;
            if(
    $dle_module == "cat")
            {
                if( 
    $config['allow_alt_url'] ) $list "<li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">{$cat_info[$id]['name']}</span><meta property=\"position\" content=\"2\"></li>";
                else 
    $list "<li property=\"itemListElement\" typeof=\"ListItem\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span><meta property=\"position\" content=\"2\"></li>";
            }
            else
            {
                if( 
    $config['allow_alt_url'] ) $list "<li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"" $config['http_home_url'] . get_url$id ) . "/\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">{$cat_info[$id]['name']}</span></a><meta property=\"position\" content=\"2\"></li>";
                else 
    $list "<li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$id]['alt_name']}\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">{$cat_info[$id]['name']}</span></a><meta property=\"position\" content=\"2\"></li>";
            }
        }
        else
        {
            
    $id_i 3;
            if(
    $dle_module == "cat")
            {
                if( 
    $config['allow_alt_url'] ) $list "<li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">{$cat_info[$id]['name']}</span><meta property=\"position\" content=\"{$i}\"></li>";
                else 
    $list "<li property=\"itemListElement\" typeof=\"ListItem\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span><meta property=\"position\" content=\"{$i}\"></li>";
            }
            else
            {
                if( 
    $config['allow_alt_url'] ) $list "<li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"" $config['http_home_url'] . get_url$id ) . "/\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">{$cat_info[$id]['name']}</span></a><meta property=\"position\" content=\"3\"></li>";
                else 
    $list "<li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$id]['alt_name']}\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">{$cat_info[$id]['name']}</span></a><meta property=\"position\" content=\"3\"></li>";
            }
        }
        while ( 
    $parent_id ) {
            
    $i--;
            if(
    $dle_module != "cat")
            {
                if( 
    $config['allow_alt_url'] ) $list "<li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"" $config['http_home_url'] . get_url$parent_id ) . "/\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">{$cat_info[$parent_id]['name']}</span></a><meta property=\"position\" content=\"{$i}\"></li>" {$separator} " $list;
                else 
    $list "<li property=\"itemListElement\" typeof=\"ListItem\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$parent_id]['alt_name']}\" property=\"item\" typeof=\"WebPage\"><span property=\"name\">{$cat_info[$parent_id]['name']}</span></a><meta property=\"position\" content=\"{$i}\"></li>" {$separator} " $list;
            }
            else
            {
                if(
    $id != $cat_info[$parent_id]['id'])
                    
    $list "<li property=\"itemListElement\" typeof=\"ListItem\"><a property=\"item\" typeof=\"WebPage\" href=\"" $config['http_home_url'] . get_url$parent_id ) . "\"><span property=\"name\">{$cat_info[$parent_id]['name']}</span></a><meta property=\"position\" content=\"{$i}\"></li>" {$separator} " $list;
                else
                    
    $list "<li property=\"itemListElement\" typeof=\"ListItem\"><span property=\"name\">{$cat_info[$parent_id]['name']}</span><meta property=\"position\" content=\"{$i}\"></li>" {$separator} " $list;
            }
            
    $parent_id $cat_info[$parent_id]['parentid'];
            if(
    $parent_id) {
                if( 
    $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
            }
        }
        return 
    $list "|" $id_i;
    }
    Далее открываем .css файл который используется где и хлебные крошки и вставляем :
    PHP:
    ol[typeof=BreadcrumbList]
    {
        
    display:inline-block;
        list-
    style:none!important;
    }
    ol[typeof=BreadcrumbList] > li
    {
        
    display:inline-block;
    }
    4. Ставим микро-разметку open graph для яндекс
    5. Ставим микро-разметку под твиттер
    6. Ставим микро-разметку schema для google
    В этом пункте мы преобразуем title и добавим в него ключи. Что туда добавлять решайте сами, я же опишу вам как это делается.
    Открываем /engine/modules/show.full.php и ищем в нем
    PHP:
    $metatags['title'] = $row['title'];
    меняем на
    PHP:
    $metatags['title'] = "Смотреть онлайн " $row['title'] . " бесплатно в HD";
    Допустим вы хотите задать title в зависимости от категории, для фильмов один, для сериалов другой, для анонсов или трейлеров третий. Тогда добавим проверку на категорию. Для этого
    PHP:
    $metatags['title'] = $row['title'];
    заменяем на
    PHP:
    if ($category_id == OR $category_id == 6$metatags['title'] = "Смотреть онлайн фильм " $row['title'] . " бесплатно в HD";
    elseif (
    $category_id == OR $category_id == OR $category_id == OR $category_id == 4$metatags['title'] = "Смотреть онлайн сериал " $row['title'] . " бесплатно в HD";
    else 
    $metatags['title'] = "Смотреть онлайн трейлер " $row['title'] . " бесплатно в HD";
    Не забудьте проставить свои категории id
    8. Делаем ссылку на полную новость как на кинопоиске
    или (одно из двух)
    9. Делаем ссылку на полную новость вида сайт.ру/категория/id/чпу-новости/
    Внимание пункты 8 и 9 - выбераем что-то одно из двух, либо можно оставить все как есть с коробки dle, + в том что можно добавить ключи прямо в ссылку, используя эти пунты
    10. Добавляем мета-тег canonical для ссылки на полную новость (важно)
    11. Aggregaterating для dle - микроразметка для рейтинга новости


    Каждый может предложить свои варианты, я протестирую и добавлю в статью, если все работает
     
    #1 DLEPlugins, 27 авг 2016
    Последнее редактирование: 30 авг 2016
    • Нравится Нравится x 20
    • Полезно Полезно x 2
  2. aeneas

    Забанен

    Регистрация:
    12 мар 2016
    Сообщения:
    11.489
    Лучших ответов:
    10
    Рейтинги:
    +4.043 / 208 / -0
    у меня категории и главная шустро а сами страницы с фильмами бывает по минуте открываются ) как исправить )
     
  3. Sergy

    Команда форума VIP Кинотрафик v2

    Регистрация:
    13 июн 2016
    Сообщения:
    701
    Лучших ответов:
    0
    Рейтинги:
    +244 / 3 / -0
    #UPD:
    "К сожалению на посещаемом сайте данный хак оказался не столь производительным. Из-за повышенной длинны запроса он стал потреблять на порядок больше оперативной памяти."

    З.Ы. - Спасибо за подборку - но вот этот момент надо было добавить обязательно !)
     
    • Нравится Нравится x 1
  4. Sergy

    Команда форума VIP Кинотрафик v2

    Регистрация:
    13 июн 2016
    Сообщения:
    701
    Лучших ответов:
    0
    Рейтинги:
    +244 / 3 / -0
    И по поводу кеша - Пафнутого реккомендация такая если все правильно скопировал когда-то
    И еще стоит добавить что это работает ТОЛЬКО НА ЧИСТОМ АПАЧЕ если работает нгикс - то это не работает
    <IfModule mod_expires.c>
    ExpiresActive on

    ExpiresDefault "access plus 1 month"

    # cache.appcache needs re-requests in FF 3.6 (thanks Remy ~Introducing HTML5)
    ExpiresByType text/cache-manifest "access plus 0 seconds"

    # html
    ExpiresByType text/html "access plus 0 seconds"

    # XML
    ExpiresByType text/xml "access plus 0 seconds"
    ExpiresByType application/xml "access plus 0 seconds"

    # RSS
    ExpiresByType application/rss+xml "access plus 1 hour"

    # Favicon
    ExpiresByType image/x-icon "access plus 1 week"

    # Картинки
    ExpiresByType image/gif "access plus 1 month"
    ExpiresByType image/png "access plus 1 month"
    ExpiresByType image/jpeg "access plus 1 month"
    ExpiresByType image/jpg "access plus 1 month"

    # HTC файлы (например css3pie)
    ExpiresByType text/x-component "access plus 1 month"

    # Нестандартные шрифты сайта
    ExpiresByType application/x-font-ttf "access plus 1 month"
    ExpiresByType font/opentype "access plus 1 month"
    ExpiresByType application/x-font-woff "access plus 1 month"
    ExpiresByType image/svg+xml "access plus 1 month"
    ExpiresByType application/vnd.ms-fontobject "access plus 1 month"

    # CSS и javascript
    ExpiresByType text/css "access plus 1 year"
    ExpiresByType application/javascript "access plus 1 year"

    </IfModule>

    # Cache-Control браузера
    <ifModule mod_headers.c>
    # 30 дней
    <filesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
    Header set Cache-Control "max-age=2592000, public"
    </filesMatch>
    # 30 дней
    <filesMatch "\.(css|js)$">
    Header set Cache-Control "max-age=2592000, public"
    </filesMatch>
    # 2 дня
    <filesMatch "\.(xml|txt)$">
    Header set Cache-Control "max-age=172800, public, must-revalidate"
    </filesMatch>
    # 1 день
    <filesMatch "\.(html|htm|php)$">
    Header set Cache-Control "max-age=172800, private, must-revalidate"
    </filesMatch>
    </ifModule>

    <IfModule mod_setenvif.c>
    #Эта конструкция для говнобраузера
    #Запрет отдачи HTTP-заголовков Vary
    BrowserMatch "MSIE" force-no-vary
    BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary
    </IfModule>
     
    • Нравится Нравится x 2
  5. Keiskar

    Забанен

    Регистрация:
    2 июл 2015
    Сообщения:
    870
    Лучших ответов:
    0
    Рейтинги:
    +397 / 0 / -0
    Вот приложу сжатие для nginx:
    Код:
    expires max;
    gzip on;
    gzip_min_length 1000;
    gzip_proxied any;
    gzip_types text/plain text/css application/json application/javascript text/xml text/javascript application/x-javascript application/xml application/rss+xml application/atom+xml applicatio$
    gzip_disable "msie6";
    gzip_comp_level 6;
     
    • Нравится Нравится x 1
  6. TopicStarter Overlay
    DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    Я там вписал, что больше оперативки ест и ставить или нет, решайте сами. У меня vps и оперативно свободной нормально, я его использую. На обычном хостинге конечно лучше не ставитт
     
  7. Romantv

    Забанен

    Регистрация:
    17 июл 2015
    Сообщения:
    6.992
    Лучших ответов:
    6
    Рейтинги:
    +2.000 / 141 / -0
  8. TopicStarter Overlay
    DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
  9. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    • Нравится Нравится x 1
  10. Romantv

    Забанен

    Регистрация:
    17 июл 2015
    Сообщения:
    6.992
    Лучших ответов:
    6
    Рейтинги:
    +2.000 / 141 / -0
    с чего ты взял что она не нравится?и встроенная тоже работает,
     
  11. Romantv

    Забанен

    Регистрация:
    17 июл 2015
    Сообщения:
    6.992
    Лучших ответов:
    6
    Рейтинги:
    +2.000 / 141 / -0
    но как же он будет против,стоять рядом со реальными профи,ты на пример откажешся на одной странице напишут про тебя и президента
     
  12. madpitbull

    madpitbull Бывалый

    Регистрация:
    26 сен 2015
    Сообщения:
    393
    Лучших ответов:
    0
    Рейтинги:
    +60 / 6 / -0
    а у меня такой код стоит, не помню откуда ставил

    Код:
    //разные title для страниц пагинации, для первой полный title, для пагинации короткий
    if ($do == "cat" and $category != '' and $subaction == '') { //если категория
        if ( $metatags['header_title'] and ! $page_extra ) $metatags['title'] = stripslashes($metatags['header_title']);
        else $metatags['title'] = stripslashes($cat_info[$category_id]['name']) . $page_extra;
    } elseif ($dle_module == "main") { //если главная страница
        if ( ! $page_extra ) $metatags['title'] = stripslashes($config['home_title']);
        else $metatags['title'] = stripslashes($config['short_title']) . $page_extra;
    } elseif ($metatags['header_title']) $metatags['title'] = stripslashes($metatags['header_title']);
    //разные title для страниц пагинации, для первой полный title, для пагинации короткий
    в чем отличие, ставить твой или можно оставить то что есть?
     
  13. TopicStarter Overlay
    DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    Ты брал на сайте Алаича или там, где у него взяли етот код. Как писал выше геймер он подправил под новые версии dle. Та часть что ты цитировал была адаптирована им. Думаю лучше от геймера использовать, так как код который стоит у тебя был написан еще на 9 dle
     
    • Нравится Нравится x 1
  14. Ysol33

    Команда форума VIP Кинотрафик v2

    Регистрация:
    21 апр 2015
    Сообщения:
    856
    Лучших ответов:
    0
    Рейтинги:
    +213 / 0 / -0
    Если код для сжатия связки апача и nginx
     
  15. TopicStarter Overlay
    DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    первый пункт Внутренней оптимизации тебе должен подойти, попробуй. У меня тоже связка стоит
     
  16. europa1988

    europa1988 Бывалый

    Регистрация:
    24 фев 2016
    Сообщения:
    613
    Лучших ответов:
    2
    Рейтинги:
    +113 / 11 / -0
    а что если было так site.ru » драма » Милый Ханс, дорогой Петр (2015)

    стало так

    site.ru
    »
    драма
    »
    Милый Ханс, дорогой Петр (2015)

    так стало после манипуляций приведенных выше
     
    #16 europa1988, 30 авг 2016
    Последнее редактирование: 30 авг 2016
  17. new

    new
    Забанен

    Регистрация:
    14 авг 2016
    Сообщения:
    549
    Лучших ответов:
    0
    Рейтинги:
    +252 / 0 / -0
    Это в файл nginx.conf?
     
  18. Keiskar

    Забанен

    Регистрация:
    2 июл 2015
    Сообщения:
    870
    Лучших ответов:
    0
    Рейтинги:
    +397 / 0 / -0
    • Нравится Нравится x 1
  19. TopicStarter Overlay
    DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    Каких именно?
     
  20. TopicStarter Overlay
    DLEPlugins

    Кодер

    Регистрация:
    29 ноя 2015
    Сообщения:
    1.608
    Лучших ответов:
    8
    Рейтинги:
    +1.195 / 9 / -0
    добавил пункты 7-11 для seo оптимизации
     
Яндекс.Метрика