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

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

Вопрос? Не убирается index.php и index.html из адреса главной страницы, почему?

Тема в разделе "Вопросы- ответы", создана пользователем yuris, 6 янв 2018.

06.01.18 в 01:50
08.01.18 в 19:24
25
2.863
0
  1. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    Всем привет. Кароче я *удалено, п.2.2 настоящих правил* уже с этой хней. Никак не убирается index.php и index.html из адреса главной страницы. DLE 11.2 Сайт открывается по обоим адресам site.ru и site.ru/index.php? и оба отдают код 200 и индексируются создавая кучу дублей. Уже и Алаича ставил редирект и по Геймеру и один *удалено, п.2.2 настоящих правил* правило вот это тупо не работает.

    Геймер:
    # Редирект с index.php/html на сайт
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html)\ HTTP/
    RewriteRule .* / [R=301,L]

    Алаев:
    ### Редиректы с index.php или index.html на сайт
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html)\ HTTP/
    RewriteRule .* / [R=301,L]

    Кто шарит, подскажите, в чем секрет, что не работает эта хрень на версии DLE 11.2

    Вот такую хню еще нарыл
    RewriteRule ^index.php$ / [QSA,R]
    но он убирает только index.php, т.е знак вопроса остается. Такая хрень получается: было site.ru/index.php? после установки правила становится так site.ru/? что собственно не лучше!
     
    #1 yuris, 6 янв 2018
    Последнее редактирование модератором: 6 янв 2018
  2. Den

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

    Регистрация:
    19 окт 2015
    Сообщения:
    2.129
    Лучших ответов:
    0
    Рейтинги:
    +1.004 / 6 / -0
    Код:
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
    RewriteRule ^index\.php$ http://site.ru/ [R=301,L]
     
    • Нравится Нравится x 1
  3. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    сйчас обратил внимание, что после переноса нескольких сайтов на зомро у них тоже не работет это правило. Что за дичь? Дело в настройках сервера чтоль???

    Den по ходу это проблемы где-то в сервере как я понял...
     
    #2 yuris, 6 янв 2018
    Последнее редактирование модератором: 6 янв 2018
  4. Shinigami

    Shinigami Посетитель

    Регистрация:
    30 ноя 2017
    Сообщения:
    73
    Лучших ответов:
    0
    Рейтинги:
    +14 / 1 / -0
    Если у вас сайт на https то и надо прописывать протокол или вообще убрать уточнение и сделать для обоих, у вас там сайт наверное на https
    Вставить после инициализации
    RewriteEngine On

    Код:
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,10}\ /index\.(php|html)
    RewriteRule .* / [R=301,L]
     
  5. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    нет, на http и ни один из приведенных выше правил не срабатывает!

    вставил, но теперь отображается так: site.ru/?
     
    #4 yuris, 6 янв 2018
    Последнее редактирование модератором: 6 янв 2018
  6. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    почему после того как ставишь правила редиректа, либо вообще ничего не происходит, либо вместо http://site.ru/index.php? получается http://site.ru/? как убрать этот знак вопроса в конце слеша??? Это капец!
     
  7. Romantv

    Забанен

    Регистрация:
    17 июл 2015
    Сообщения:
    6.992
    Лучших ответов:
    6
    Рейтинги:
    +2.000 / 141 / -0
    закрой в роботе и все дела
    Disallow: /*.html
    Disallow: /*.php
     
    • Нравится Нравится x 1
  8. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    Romantv та я уже тоже об этом думал, но хочется как-то по фэншую что ли... )
     
  9. Romantv

    Забанен

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

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    Читаем вниматочно!! Короче говоря, после долгих танцев с бубном выяснилось, что если устанавливать любые приведенные выше правила редиректа, они работают ВСЕ! Но, только если адрес/URL имеет вид site.ru/index.php (без знака вопроса в конце) то тогда происходит редирект на правильную главную страницу такого вида site.ru/ (как и положено). Опять таки, если адрес имеет вид site.ru/index.php? (со знаком вопроса в конце) то большая часть правил категорически НЕ работает за исключением этого

    RewriteCond %{THE_REQUEST} ^[A-Z]{3,10}\ /index\.(php|html) RewriteRule .* / [R=301,L]

    Но это правило исключает из адреса только index.php и делает редирект на какой-то левый такого вот вида site.ru/? (со знаком вопроса после слеша) что собственно тоже ярый косяк. Теперь назрел новый вопрос и он сильно меня беспокоит, нет, даже бесит! Что это за такой стремный адрес/URL site.ru/index.php? (со знаком вопроса в конце) на который не действуют никакие правила редиректа, при этом отдающий код 200 и замечательно индексирующийся ПС создавая дубли и глваное: Как от него избавиться!?!
     

    Вложения:

    #10 yuris, 6 янв 2018
    Последнее редактирование: 6 янв 2018
  11. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    yuris это все ссылки в ДЛЕ без ЧПУ, их видно в htaccess:
    2018-01-07_00-35-31.png
     
  12. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    byroot так что делать нужно в этом случае? Главная страница сайта открывается по этому козлиному адресу http://site.ru/index.php?
    Это же ни есть гуд, ее нужно как-то ликвидировать насколько я понимаю..., но как я не знаю и пока ответов не нашел!
     
    • Согласен Согласен x 1
  13. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    yuris надо разбираться с настройкой сервера! Точнее не скажу, т.к. последний год 90% всего доверяю ТП хостера. Если есть возможность - пиши им и пускай они настраивают сервер правильно чтобы не было таких баговых ссылок и редиректов.
     
  14. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    byroot я им уже писал. Вчера вместе с ними с вечера до 5 утра с этой ерундой разбирались, но они так ничего и не смогли с этим сделать. Они походу там сами точно не знают из-за чего эти траблы. Тыкают наугад, вставляют какие-то разные правила редиректа в .htaccess а ни фига все равно не работает!

    Знать бы конкретно что им нужно настраивать, так сказать ткнуть их носом в нужном направлении, типа нужно поковырять там-то или там-то, такой-то файл и/или папку на сервере. Возможно они бы и настроили. Но я ХЗ что и как им объяснить и как их натолкнуть на правильные мысли ибо сам в этом ни черта не смыслю.
     
  15. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    Кому интересно, такая проблема была решена (несколько топорно, но зато реально работает). Итак, проблема была устранена путем вставления в корневой файл index.php в самое его начало такого маленького кода

    if ( getenv(’REQUEST_URI’) == ‘/index.php?‘ )

    {

    Header( “HTTP/1.1 301 Moved Permanently” );

    Header( “Location: http://site.ru/” );

    exit;

    }
     
  16. Den

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

    Регистрация:
    19 окт 2015
    Сообщения:
    2.129
    Лучших ответов:
    0
    Рейтинги:
    +1.004 / 6 / -0
    yuris ничего топорного. Обычный метод, но средствами php. Довольно часто используется. Знал бы, что такой подойдёт, то сразу предложил бы :)
     
    • Нравится Нравится x 1
  17. wawe

    PRO Users

    Регистрация:
    23 янв 2017
    Сообщения:
    3.549
    Лучших ответов:
    6
    Рейтинги:
    +1.574 / 404 / -0
    Parse error: syntax error, unexpected ')' in /var/www/***/data/www/****/index.php on line 2

    Не идёт чё то.
     
  18. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    Куда вставлял?
     
  19. wawe

    PRO Users

    Регистрация:
    23 янв 2017
    Сообщения:
    3.549
    Лучших ответов:
    6
    Рейтинги:
    +1.574 / 404 / -0
    Да по разному пробовал.
    Покаж на примере как у тебя работает.

    Код:
    <?php
    /*
    =====================================================
     DataLife Engine - by SoftNews Media Group
    -----------------------------------------------------
     http://dle-news.ru/
    -----------------------------------------------------
     Copyright (c) 2004-2017 SoftNews Media Group
    =====================================================
     Данный код защищен авторскими правами
    =====================================================
     Файл: index.php
    -----------------------------------------------------
     Назначение: Главная страница
    =====================================================
    */
    
    @ob_start ();
    @ob_implicit_flush ( 0 );
    
    @error_reporting ( E_ALL ^ E_WARNING ^ E_DEPRECATED ^ E_NOTICE );
    @ini_set ( 'error_reporting', E_ALL ^ E_WARNING ^ E_DEPRECATED ^ E_NOTICE );
    
    define ( 'DATALIFEENGINE', true );
    define ( 'ROOT_DIR', dirname ( __FILE__ ) );
    define ( 'ENGINE_DIR', ROOT_DIR . '/engine' );
    
    require_once ROOT_DIR . '/engine/init.php';
    
    ?>
     
  20. TopicStarter Overlay
    yuris

    yuris Местный

    Регистрация:
    21 сен 2015
    Сообщения:
    1.508
    Лучших ответов:
    1
    Рейтинги:
    +620 / 12 / -0
    Назначение: Главная страница
    =====================================================
    */

    сюда вставляй

    @ob_start ();
    @ob_implicit_flush ( 0 );
     
Яндекс.Метрика