X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Проблема с 301 редиректом для DLE
ErgoProxy
ErgoProxy
Topic Starter сообщение 27.9.2011, 11:59; Ответить: ErgoProxy
Сообщение #1


Движок сайта DLE, как известно без дополнительных действий у этого движка появляются дубли страниц за счёт страниц со слэшем и без, например: http://www.anime-news.org.ua/anime и http://www.anime-news.org.ua/anime/ обе эти страницы имели одинаковый контент и выдавали статус код 200 ОК. Я решил добавлять в конец адреса слэш с 301 редиректом, нашёл в инете вот такой код:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ /$1/ [R=301,L]

Но возникла проблема в конец всех файлов слэш стал добавляться, то есть, например: http://www.anime-news.org.ua/sitemap.xml/ Тогда я изменил код таким образом:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*).xml
RewriteCond %{REQUEST_URI} !(.*).html
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ /$1/ [R=301,L]

Слэш перестал добавляться к html и xml файлам, вроде всё работает нормально, но хотел бы комментарий от знающих людей, всё ли правильно было сделано. И отдельно вопрос: Что значит строчка:
RewriteCond %{REQUEST_FILENAME} !-f

Также ещё вопрос: На сайт устанавливал модуль карты сайта, изначально для ЧПУ в .htaccess был прописан такой код:
RewriteRule ^sitemap(/?)+$ /?do=sitemap [L]

Так как с таким кодом были доступны две одинаковые страницы с кодом статуса 200 ОК: http://www.anime-news.org.ua/sitemap и http://www.anime-news.org.ua/sitemap/.
Поменял код на:
RewriteRule ^sitemap/(.*)$ /?do=sitemap [L]

Правильно ли я сделал?
Далее сделал перенаправление с домена без www на домен с www, а также с /index.php /index.html на /.
RewriteCond %{HTTP_HOST} ^anime-news\.org.ua$ [NC]
RewriteRule ^(.*)$ http://www.anime-news.org.ua/$1 [R=301,L]


# Определяем главное зеркало
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ / [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ / [R=301,L]

Всё ли правильно?
Потом посмотрел в панель вебмастера в гугле и увидел, что есть ещё дубли за счёт, например: http://www.anime-news.org.ua/anime/ и http://www.anime-news.org.ua/anime/page/1/. Добавил вот такой код:
# Редирект с первой страницы на основную
RewriteRule ^(.*)/1$ $1 [R=301,L]
RewriteRule ^(.*)page$ $1 [R=301,L]

Но не работает такой код, если ввести адрес http://www.anime-news.org.ua/anime/page/1/, то перенаправление не происходит, а если ввести http://www.anime-news.org.ua/anime/page/1 , тогда вообще кидает на страницу с таким же содержанием, но адресом http://www.anime-news.org.ua/home/amd7750/...lic_html/anime/.
Как исправить код, что бы правильно обрабатывало?
Помогите, пожалуйста!
На данный момент весь код имеет вид:
DirectoryIndex index.php
RewriteEngine On

RewriteCond %{HTTP_HOST} ^anime-news\.org.ua$ [NC]
RewriteRule ^(.*)$ http://www.anime-news.org.ua/$1 [R=301,L]

# Определяем главное зеркало
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ / [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ / [R=301,L]

# Редирект с первой страницы на основную
RewriteRule ^(.*)/1$ $1 [R=301,L]
RewriteRule ^(.*)page$ $1 [R=301,L]

# Карта сайта
RewriteRule ^sitemap/(.*)$ /?do=sitemap [L]

# Без слэша на слэш
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*).xml
RewriteCond %{REQUEST_URI} !(.*).html
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ /$1/ [R=301,L]

Дальше стандартное содержание от движка DLE 9.3.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


Сообщение отредактировал ErgoProxy - 27.9.2011, 12:05
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) ✅ sms.chekons.com - ⭐ Сервис для получения SMS на реальные номера USA "Non-VoIP, безлим SMS, API" ⭐
Сервис для получения SMS на реальные номера USA
13 Chekon 4070 Вчера, 11:48
автор: Chekon
Открытая тема (нет новых ответов) Rebex.io – Ваша инновационная платформа для обмена криптовалюты!
1 Rebex 677 17.4.2024, 11:50
автор: Rebex
Открытая тема (нет новых ответов) Какой % отказов нормален для сайта?
11 Aloof 2811 16.4.2024, 12:48
автор: diviner99
Горячая тема (нет новых ответов) Betatransfer.net - прием платежей для HIGH RISK проектов, интернет эквайринг и мерчант онлайн оплат
54 arendator 34834 15.4.2024, 15:16
автор: arendator
Горячая тема (нет новых ответов) ⭕Антидетект браузер AdsPower для эффективной работы с мультиаккаунтами!
83 AdsPower 24413 14.4.2024, 22:52
автор: AdsPower


 



RSS Текстовая версия Сейчас: 19.4.2024, 12:39
Дизайн