dlenew 0 Опубликовано: 18 сентября 2017 Рассказать Опубликовано: 18 сентября 2017 Здравствуйте, у меня версия 9.2 сайт старый еще давно настроил страницу 404 и все было хорошо пока в вебмастере не стали вылазить не существующие url страниц, я конечно понимаю что это добрые люди стараются. Приведу примеры чтобы было более понятнее что у меня творится url полной новости у меня выглядит так site.ru/категория/id-имя новости.html Если задать не существующую категорию site.ru/категорияlalala/ то будет страница 404 В полной новость с нарушением ID страницы тоже будут выдать 404 тут как говорится все хорошо А если изменить в url название категории на не существующую но с сохранением id реальной новости то сайт открывает эту новость по несуществующему url пример: site.ru/категорlalala/id-имя новости.html Подскажите пожалуйста как это исправить наверняка многие с этим сталкивались, меня вот только сейчас приперло не без добрых людей конечно. Цитата Ссылка на сообщение Поделиться на других сайтах
dlenew 0 Опубликовано: 18 сентября 2017 Рассказать Опубликовано: 18 сентября 2017 Автор вроде нашел решение, прошу не серчать сам не ожидал вчера всю ночь сидел искала тут бац на ясную голову и нашел Открываем файл /engine/modules/show.full.php НАХОДИМ: } else { $full_link = $config['http_home_url'] . "index.php?newsid=" . $row['id']; $print_link = $config['http_home_url'] . "engine/print.php?newsid=" . $row['id']; $short_link = ""; } ВЫШЕ ДОБАВЛЯЕМ: //обработка неправильного alt-name и 301 редирект $true_link = $config['http_home_url'] . substr ($_SERVER['REQUEST_URI'], 1); if ($row['allow_comm']) { //если разрешены комменты $conf_comm_by_page = intval( $config['comm_nummers'] ); // комм на стр из настроек $news_comm_num = $row['comm_num']; // общее кол-во комм $comm_page_count = @ceil( $news_comm_num / $conf_comm_by_page ); if ( ($comm_page_count >= 2) && (intval($_REQUEST['cstart']) >= 2) ) $full_link = $link_page . intval($_REQUEST['cstart']) . "," . $news_name . ".html"; } if ($news_page >= 2) $full_link = $link_page . $news_name . ".html"; if ($true_link != $full_link) { header('HTTP/1.1 301 Moved Permanently'); header ('Location: ' . $full_link); die(); } //обработка неправильного alt-name и 301 редирект Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 18 сентября 2017 Рассказать Опубликовано: 18 сентября 2017 В стандартном DLE все есть и не требуется никаких правок. Нужно в настройках скрипта включить контроль неверных ЧПУ. Цитата Ссылка на сообщение Поделиться на других сайтах
dlenew 0 Опубликовано: 18 сентября 2017 Рассказать Опубликовано: 18 сентября 2017 Автор 10 минут назад, celsoft сказал: В стандартном DLE все есть и не требуется никаких правок. Нужно в настройках скрипта включить контроль неверных ЧПУ. спасибо Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.