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

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

Убираем все лишнее слеши и знак "?" через htaccess

Тема в разделе "Google", создана пользователем Sardorbek, 27 ноя 2024.

27.11.24 в 04:37
09.12.24 в 14:15
1
930
2
  1. TopicStarter Overlay
    Sardorbek

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

    Регистрация:
    10 апр 2021
    Сообщения:
    134
    Лучших ответов:
    0
    Рейтинги:
    +43 / 3 / -0
    У множество сайтов можете встретить повторяющиеся слеши:
    sayt.com///////
    либо
    sayt.com/?
    Даже у топовых сайтов есть этот ошибка.

    Решения. Вставляем в .htaccess после RewriteEngine ON

    Код:
    RewriteCond %{THE_REQUEST} //
    #(//////////)
    RewriteRule .* /$0 [R=301,L]
    #
    
    # (/?)
    RewriteCond %{THE_REQUEST} ^[^\s]+\s+[^?]*?\?
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule .? %{REQUEST_URI}? [R=301,L]
    Желательно оставить пробел в начале и в конце этого кода.
     
    #1 Sardorbek, 27 ноя 2024
    Последнее редактирование: 27 ноя 2024
    • Нравится Нравится x 2
  2. TopicStarter Overlay
    Sardorbek

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

    Регистрация:
    10 апр 2021
    Сообщения:
    134
    Лучших ответов:
    0
    Рейтинги:
    +43 / 3 / -0
    Ещё один способ добавить этот код в index.php:
    Код:
    // Убираем слеш в конце ссылок
    $uri = preg_replace("/\?.*/i",'', $_SERVER['REQUEST_URI']);
     
    if ((!strpos($uri, 'simpla'))  && (strlen($uri)>1)) {
      if (rtrim($uri,'/')!=$uri) {
        header("HTTP/1.1 301 Moved Permanently");
        header('Location: http://'.$_SERVER['SERVER_NAME'].str_replace($uri, rtrim($uri,'/'), $_SERVER['REQUEST_URI']));
        exit();
      }
    } 
    Источник
    Више указанный правила которые в начале статье через .htaccess убирайте, если кто то воспользовались им. Можете оставить только этот часть отвечающих на убрать знак "?":
    Код:
    # (/?)
    RewriteCond %{THE_REQUEST} ^[^\s]+\s+[^?]*?\?
    RewriteCond %{QUERY_STRING} ^$
    RewriteRule .? %{REQUEST_URI}? [R=301,L]
     
    #2 Sardorbek, 9 дек 2024
    Последнее редактирование: 9 дек 2024
    • Нравится Нравится x 1
Яндекс.Метрика