301 редирект если общих данных в линках не видно? (smf) - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

  • 2 Страниц +
  • 1
  • 2

301 редирект если общих данных в линках не видно? (smf)

#1 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 21 Апрель 2014 - 20:12

Возможно ли сделать переадресацию со старых ссылок на новые?
Вот старая ссылка - pristavki.su/index.php?topic=1424.0
Новая ссылка - pristavki.su/index.php/topic/925-proshivka-ps3-versiia-proshivki-411-kak-ponizit-do-355/
Когда переходил с vb на smf у cms в темах было общий id.
Там 301 было сделать относительно не сложно и была логика
RewriteCond %{QUERY_STRING} ^t=([0-9]+).*$
RewriteRule ^showthread.php$ /index.php?topic=%1.0 [R=301,L]
RewriteCond %{QUERY_STRING} ^f=([0-9]+).*$
RewriteRule ^forumdisplay.php$ /index.php?board=%1.0 [R=301,L]


Возможно ли в моей ситуации?
0

#2 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 256
  • Регистрация: 20-Март 09
  • Репутация: 2 066
  • IPB version:3.1.x
 

Отправлено 21 Апрель 2014 - 20:33

Возможно только "двойной редирект", так как при включенном чпу обычные ссылки редиректятся на чпу'шные. В таком случае в htaccess можно сделать редирект на обычные, а форум сделает реирект с обычных на чпу.

Добавить после RewriteEngine On
RewriteCond %{QUERY_STRING} ^topic=(\d+)\.(?:0|msg)
RewriteRule ^index\.php /index.php?showtopic=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^topic=(\d+)\.(\d+)
RewriteRule ^index\.php /index.php?showtopic=%1&st=%2 [R=301,L]

RewriteCond %{QUERY_STRING} ^board=(\d+)\.0
RewriteRule ^index\.php /index.php?showforum=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^board=(\d+)\.(\d+)
RewriteRule ^index\.php /index.php?showforum=%1&st=%2 [R=301,L]

RewriteCond %{QUERY_STRING} ^action=profile;u=(\d+)
RewriteRule ^index\.php /index.php?showuser=%1 [R=301,L]


или (для тех кто использует чпу)
RewriteCond %{QUERY_STRING} ^topic=(\d+)\.(?:(\d+)|msg)
RewriteRule ^index\.php /index.php?showtopic=%1&st=%2 [R=301,L]

RewriteCond %{QUERY_STRING} ^board=(\d+)\.(\d+)
RewriteRule ^index\.php /index.php?showforum=%1&st=%2 [R=301,L]

RewriteCond %{QUERY_STRING} ^action=profile;u=(\d+)
RewriteRule ^index\.php /index.php?showuser=%1 [R=301,L]

1

#3 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 21 Апрель 2014 - 20:42

Спасибо что отозвались!
Редирект происходит но не на те темы.
Допустим тема со старым id 1424, редиректится на новые темы с 1424. А id не соответствует.
Получается сработало на половину :)
0

#4 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 21 Апрель 2014 - 20:44

Попробовал второй код. Тоже редирект по id получается.
0

#5 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 256
  • Регистрация: 20-Март 09
  • Репутация: 2 066
  • IPB version:3.1.x
 

Отправлено 21 Апрель 2014 - 20:51

Просмотреть сообщениеUserName900 сказал(а):

А id не соответствует.

Ну это уже другой вопрос. Когда делали конвертацию темам/форумам/пользователям надо было поставить галочку Empty local data?, чтобы при конвертирования сохранить старые ид.
По идее в бд есть связь старые-новые ид, но для этого нужно уже писать костыль на php.

Просмотреть сообщениеUserName900 сказал(а):

Попробовал второй код. Тоже редирект по id получается

Второй код упрощенная форма первого.
0

#6 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 21 Апрель 2014 - 20:53

Блин, вот сколько нюансов о которых и не подумаешь. :( id уже не изменить?
0

#7 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 256
  • Регистрация: 20-Март 09
  • Репутация: 2 066
  • IPB version:3.1.x
 

Отправлено 21 Апрель 2014 - 20:57

Просмотреть сообщениеUserName900 сказал(а):

id уже не изменить?

Нет. Но в бд есть сопоставление старые-новые ид, можно написать костыль который по старому ид получит новый, а запросы с старых ссылок с помощью htaccess перенаправить на этот обработчик.

ПС
Хотя нет, похоже id все равно не сохраняются, даже если очистить существующие данные в ипб.
0

#8 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 21 Апрель 2014 - 21:01

Не. Такого не надо. Пусть будет встрясочка сайту. Мож оно и к лучшему. Конечно упаду но думаю что поднимусь.
siv1987, спасибо огромное. Вы хороший специалист!
0

#9 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 256
  • Регистрация: 20-Март 09
  • Репутация: 2 066
  • IPB version:3.1.x
 

Отправлено 22 Апрель 2014 - 00:35

Собственно сам костыль.

1. Загрузить файл redir.php в корень форума
2. Добавить в .htaccess (после RewriteEngine On)

RewriteCond %{QUERY_STRING} ^topic=(\d+)\.(?:(\d+)|msg)
RewriteRule ^index\.php /redir.php?showtopic=%1&st=%2 [R=301,L]

RewriteCond %{QUERY_STRING} ^board=(\d+)\.(\d+)
RewriteRule ^index\.php /redir.php?showforum=%1&st=%2 [R=301,L]

RewriteCond %{QUERY_STRING} ^action=profile;u=(\d+)
RewriteRule ^index\.php /redir.php?showuser=%1 [R=301,L]

Вложений

  • Вложение  redir.php (2,79К)
    Количество загрузок: 2

1

#10 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 22 Апрель 2014 - 19:15

Это сильно загрузит базу? Вообще есть какие либо последствия для SEO или ещё чего? :)
Вы невероятно круты )) Знаете действительно многое.
0

#11 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 22 Апрель 2014 - 19:38

К сожалению редирект не случился. :D Всё точно сделал как вы сказали сэр. :)
0

#12 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 256
  • Регистрация: 20-Март 09
  • Репутация: 2 066
  • IPB version:3.1.x
 

Отправлено 22 Апрель 2014 - 23:03

Для сео есть - склейка старых урлов с новыми. Не говоря уже о пользе для пользователей, которые перешли по старом ссылкам.

Проверял, вроде работало. Возможная причина что не правильно определился ид сессии которой был сконвертирован форум. Так как их там можно создавать несколько приходится ставить условие для поиска конкретной последней завершенной сессии.
0

#13 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 22 Апрель 2014 - 23:54

Редирект был не ошибочный а просто на главную. Обычно отображается главная но ссылка по переходу. Мож это что значит.
0

#14 Пользователь не на сайте   UserName900 ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 89
  • Регистрация: 16-Апрель 14
  • Репутация: 1
  • IPB version:3.4.x
 

Отправлено 23 Апрель 2014 - 19:02

Никак не придумать ничего?
0

#15 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 256
  • Регистрация: 20-Март 09
  • Репутация: 2 066
  • IPB version:3.1.x
 

Отправлено 23 Апрель 2014 - 23:34

Просмотреть сообщениеUserName900 сказал(а):

Редирект был не ошибочный а просто на главную.

Если редиректит на главную значит - либо не правильно определяется ид сессии конвертации, либо в базе не найдено записи для этого ид. Надеюсь что после завершения конвертации вы сессию не удалили.

Файл поправил, но если в бд больше чем одной сессии (Manage Conversions), придется вручную задать ид аппликации в $app = '';
Именно id, который можно узнать из таблицы ibf_conv_apps поле app_id
1

Сообщить об этой теме:


  • 2 Страниц +
  • 1
  • 2


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна