Адреса в DLE

seomunch
На сайте с 21.11.2008
Offline
60
717

DLE открывает категорию как www.wesite.ru/category/ и как www.wesite.ru/category

Т.е. со слэшем и без. Как сделать доступным только 1 вариант? Видимо через htaccess, но как?

Банк времени (http://bank-vremeni.ru) - обменивайся своими возможностями с другими
tk1308
На сайте с 27.11.2010
Offline
37
#1

Дай свой htaccess, покажу как.

seomunch
На сайте с 21.11.2008
Offline
60
#2
tk1308:
Дай свой htaccess, покажу как.

DirectoryIndex index.php


RewriteEngine On

# Редиректы
RewriteRule ^page/(.*)$ index.php?cstart=$1 [L]


#Галерея
RewriteRule ^gallery(/?)+$ /?do=gallery [L]
RewriteRule ^gallery/page/([0-9]+)(/?)+$ /?do=gallery&cstart=$1 [L]
RewriteRule ^gallery/(.*)/fotopage/([0-9]+)(/?)+$ index.php?do=gallery&act=1&c=$1&fstart=$2 [L]
RewriteRule ^gallery/(.*)/page/([0-9]+)(/?)+$ index.php?do=gallery&act=1&c=$1&cstart=$2 [L]
RewriteRule ^gallery/(.*)/([0-9]+)-(.*).html(/?)+$ index.php?do=gallery&act=2&c=$1&fid=$2 [L]
RewriteRule ^gallery/(.*)/([0-9]+).html(/?)+$ index.php?do=gallery&act=2&c=$1&fid=$2 [L]
RewriteRule ^gallery/(.*)(/?)+$ index.php?do=gallery&act=1&c=$1 [L]

#Online Video
RewriteRule ^media(/?)+$ /index.php?do=videos [L]
RewriteRule ^media/page/([0-9]+)(/?)+$ /index.php?do=videos&page=$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 [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 [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 [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 [L]

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

RewriteRule ^page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$ index.php?newsid=$3&news_page=$1&cstart=$2 [L]
RewriteRule ^page,([0-9]+),([0-9]+)-(.*).html(/?)+$ index.php?newsid=$2&news_page=$1 [L]
RewriteRule ^print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$ engine/print.php?news_page=$1&newsid=$2 [L]
RewriteRule ^([0-9]+)-(.*).html(/?)+$ index.php?newsid=$1 [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 ^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/([^/]*)(/?)+$ 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 ^static/(.*).html(/?)+$ index.php?do=static&page=$1 [L]
# вывод избранных статей
RewriteRule ^favorites(/?)+$ index.php?do=favorites [L]
RewriteRule ^favorites/page/([0-9]+)(/?)+$ index.php?do=favorites&cstart=$1 [L]

RewriteRule ^exit.html$ /index.php?do=logout [L]
RewriteRule ^personal.html$ /index.php?do=pm [L]
RewriteRule ^users.html$ /index.php?do=members [L]
RewriteRule ^stat.html$ /index.php?do=stats [L]
RewriteRule ^register.html$ /index.php?do=register [L]
RewriteRule ^rules.html$ index.php?do=rules [L]
RewriteRule ^stats.html$ index.php?do=stats [L]
RewriteRule ^addtheme.html$ index.php?do=addnews [L]
RewriteRule ^rss.xml$ engine/rss.php [L]
RewriteRule ^sitemap.xml$ uploads/sitemap.xml [L]
RewriteRule ^feed.html$ index.php?do=feedback [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 [L]
RewriteRule ^print:([^/]+).html$ engine/print.php?do=static&page=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+).html$ index.php?do=static&page=$1 [L]
Хортица
На сайте с 22.12.2006
Offline
289
#3

seomunch, если вдруг хотите обезопасить свой сайт от дублей, есть решение. Но к сожалению оно не бесплатное ;) Помимо слешей в категориях, есть еще несколько проблем дублирования.

На XBit.Money (https://xbit.money/?rid=111) меняю крипту на гривны. Лучшие курсы Обмен Вашего PayPal/ЯД/QIWI/WebMoney и куча плюшек! Рекомендую (https://exchangex.ru/index.php?who=26749)
Vanich
На сайте с 10.07.2007
Offline
165
#4

В .htaccess включить строчку

RewriteRule ^category/([^/]+)$ http://%{HTTP_HOST}/category/$1/ [R=301,L,QSA]

и будет редирект. Сделал так по совету Платонов.

Онлайн-консультант для юридических, медицинских, компьютерных, туристических сайтов. Удобно пользователю, прибыльно вебмастеру. (http://webmasters.leadia.ru/?ref=bIoqZIaath) MONKEYWRITE ТЕПЕРЬ БЕСПЛАТНО (https://yadi.sk/d/Hd9mbvyzeMMfp)
Хортица
На сайте с 22.12.2006
Offline
289
#5

Vanich, а если категорий штук 50 то для каждой прописывать ?

Trafikgon
На сайте с 24.10.2008
Offline
174
#6

тоже интересно такая же проблема)

Trafikgon добавил 31.03.2011 в 17:34

более лучший вариант? хотя прописать 10-50 не лень впринципе.

. (#)
Trafikgon
На сайте с 24.10.2008
Offline
174
#7
Vanich:
В .htaccess включить строчку
RewriteRule ^category/([^/]+)$ http://%{HTTP_HOST}/category/$1/ [R=301,L,QSA]
и будет редирект. Сделал так по совету Платонов.

неработает странно. Вроде так вводишь /категория и нефига нередиректит на /категория/

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий