Перейти к публикации

Дублирование категории


Рекомендованные сообщения

Здравствуйте. После смены домена заметил такие урл категорий http://wingad.ru/index.php?do=cat&category=gadgets/radio/. Скажите, как настроить редирект на нормальный урл? В админке все настройки по урл включены. DLE 10.2

Ссылка на сообщение
Поделиться на других сайтах

Такие ссылки могли появиться только в результате некорректных модификаций файла .htaccess в корне, когда ставят какие либо некорректные редиректы. Возможно были и другие модификации в других файлах скрипта. Восстановите полностью оригинальные файлы скрипта, и включите контроль неверных ЧПУ в админпанели скрипта.

Ссылка на сообщение
Поделиться на других сайтах

Странная ситуация. Все правки в файлы вносились еще до переноса сайта на новый домен, но такой проблемы небыло. Возможно какие-то настройки сервера влияют на это? Заменить файлы движка не могу, так как много правок вносилось... Может подскажете, как редиректом убить данный дубль?

Ссылка на сообщение
Поделиться на других сайтах

Может подскажете, как редиректом убить данный дубль?

Это уже результат некорректно редиректа. И по данной ссылке уже итак идет редирект на главную, а не открывается страница по ней сайт.

Ссылка на сообщение
Поделиться на других сайтах

Это уже результат некорректно редиректа. И по данной ссылке уже итак идет редирект на главную, а не открывается страница по ней сайт.

Там на конце ссылки стоит точка. У меня стоит редирект с несуществующих категорий на главную страницу сайта. Кстати, уберу этот бред... Вот нормальный адрес http://wingad.ru/ind...=gadgets/radio/

Вот полное содержание файла .htaccess: (простите, но не нашел спойлера чтобы спрятать...)


DirectoryIndex index.php

RewriteEngine On

RewriteCond %{HTTP_HOST} ^addgadget\.net

RewriteRule ^(.*)$ http://wingad.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^www.addgadget\.net

RewriteRule ^(.*)$ http://wingad.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^www\.wingad\.ru$ [NC]

RewriteRule ^(.*)$ http://wingad.ru/$1 [R=301,L]

RewriteBase /

RewriteRule ^(.*)page/1(/|)$ $1 [R=301,L]

# Редиректы

RewriteBase /

	### Решение проблемы адресов с косяком на конце .htm .ht .h

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_URI} ^(.*)\.htm$

RewriteRule ^(.*)\.htm$ $1.html [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_URI} ^(.*)\.ht$

RewriteRule ^(.*)\.ht$ $1.html [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_URI} ^(.*)\.h$

RewriteRule ^(.*)\.h$ $1.html [R=301,L]

RewriteRule ^page/([0-9]+)(/?)$ index.php?cstart=$1 [L]

# Сам пост

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*).html$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6&seourl=$6 [L]

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*).html$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 [L]

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*).html$ engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 [L]

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4&seourl=$4 [L]

RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html$ index.php?newsid=$4&news_page=$2&cstart=$3&seourl=$5&seocat=$1 [L]

RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+)-(.*).html$ index.php?newsid=$3&news_page=$2&seourl=$4&seocat=$1 [L]

RewriteRule ^([^.]+)/print:page,([0-9]+),([0-9]+)-(.*).html$ engine/print.php?news_page=$2&newsid=$3&seourl=$4&seocat=$1 [L]

RewriteRule ^([^.]+)/([0-9]+)-(.*).html$ index.php?newsid=$2&seourl=$3&seocat=$1 [L]

RewriteRule ^page,([0-9]+),([0-9]+),([0-9]+)-(.*).html$ index.php?newsid=$3&news_page=$1&cstart=$2&seourl=$4 [L]

RewriteRule ^page,([0-9]+),([0-9]+)-(.*).html$ index.php?newsid=$2&news_page=$1&seourl=$3 [L]

RewriteRule ^print:page,([0-9]+),([0-9]+)-(.*).html$ engine/print.php?news_page=$1&newsid=$2&seourl=$3 [L]

RewriteRule ^([0-9]+)-(.*).html$ index.php?newsid=$1&seourl=$2 [L]

# За день

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$ index.php?year=$1&month=$2&day=$3 [L]

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$ index.php?year=$1&month=$2&day=$3&cstart=$4 [L]

# За весь месяц

RewriteRule ^([0-9]{4})/([0-9]{2})(/?)+$ index.php?year=$1&month=$2 [L]

RewriteRule ^([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$ index.php?year=$1&month=$2&cstart=$3 [L]

# Вывод за весь год

RewriteRule ^([0-9]{4})(/?)+$ index.php?year=$1 [L]

RewriteRule ^([0-9]{4})/page/([0-9]+)(/?)+$ index.php?year=$1&cstart=$2 [L]

# вывод отдельному тегу

RewriteRule ^tags/([^/]*)(/?)+$ index.php?do=tags&tag=$1 [L]

RewriteRule ^tags/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=tags&tag=$1&cstart=$2 [L]

# поиск по доп полям

RewriteRule ^xfsearch/([^/]*)(/?)+$ index.php?do=xfsearch&xf=$1 [L]

RewriteRule ^xfsearch/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xf=$1&cstart=$2 [L]

# вывод для отдельного юзера

RewriteRule ^user/([^/]*)/rss.xml$ engine/rss.php?subaction=allnews&user=$1 [L]

RewriteRule ^user/([^/]*)(/?)+$ index.php?subaction=userinfo&user=$1 [L]

RewriteRule ^user/([^/]*)/page/([0-9]+)(/?)+$ index.php?subaction=userinfo&user=$1&cstart=$2 [L]

RewriteRule ^user/([^/]*)/news(/?)+$ index.php?subaction=allnews&user=$1 [L]

RewriteRule ^user/([^/]*)/news/page/([0-9]+)(/?)+$ index.php?subaction=allnews&user=$1&cstart=$2 [L]

RewriteRule ^user/([^/]*)/news/rss.xml(/?)+$ engine/rss.php?subaction=allnews&user=$1 [L]

# вывод всех последних новостей

RewriteRule ^lastnews(/?)+$ index.php?do=lastnews [L]

RewriteRule ^lastnews/page/([0-9]+)(/?)+$ index.php?do=lastnews&cstart=$1 [L]

# вывод в виде каталога

RewriteRule ^catalog/([^/]*)/rss.xml$ engine/rss.php?catalog=$1 [L]

RewriteRule ^catalog/([^/]*)(/?)+$ index.php?catalog=$1 [L]

RewriteRule ^catalog/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalog=$1&cstart=$2 [L]

# вывод непрочитанных статей

RewriteRule ^newposts(/?)+$ index.php?subaction=newposts [L]

RewriteRule ^newposts/page/([0-9]+)(/?)+$ index.php?subaction=newposts&cstart=$1 [L]

# вывод избранных статей

RewriteRule ^favorites(/?)+$ index.php?do=favorites [L]

RewriteRule ^favorites/page/([0-9]+)(/?)+$ index.php?do=favorites&cstart=$1 [L]

RewriteRule ^rules.html$ index.php?do=rules [L]

RewriteRule ^statistics.html$ index.php?do=stats [L]

RewriteRule ^addnews.html$ index.php?do=addnews [L]

RewriteRule ^rss.xml$ engine/rss.php [L]

RewriteRule ^sitemap.xml$ uploads/sitemap.xml [L]

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^.]+)/page/([0-9]+)(/?)+$ index.php?do=cat&category=$1&cstart=$2 [L]

RewriteRule ^([^.]+)/?$ index.php?do=cat&category=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^.]+)/rss.xml$ engine/rss.php?do=cat&category=$1 [L]

RewriteRule ^page,([0-9]+),([^/]+).html$ index.php?do=static&page=$2&news_page=$1&seourl=$2 [L]

RewriteRule ^print:([^/]+).html$ engine/print.php?do=static&page=$1&seourl=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^/]+).html$ index.php?do=static&page=$1&seourl=$1 [L]


RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html)\ HTTP/

RewriteRule .* / [R=301,L]

Изменено пользователем harmoshka
Ссылка на сообщение
Поделиться на других сайтах

harmoshka,

Из за того что вы вообще модифицировали этот файл вы и получили проблемы. Потому делаете в нем 301 редиректы на ЧПУ редиректы.

Теперь же чтобы убрать те ссылки что у вас получились, редиректы нужно делать уже не в файле .htaccess, в самом PHP скрипте, потому как это ссылки уже без ЧПУ. И на PHP проверять URL, и в случае его некорректности перенаправлять на верный URL. Готового кода для этого у меня нет, поэтому я вам его к сожалению предоставить не могу.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...