Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 01.08.2007, 18:45   #1
AleXUnder
Senior Member
 
Аватар для AleXUnder
 
Регистрация: 10.01.2004
Сообщений: 201
Отправить сообщение для AleXUnder с помощью ICQ Отправить сообщение для AleXUnder с помощью Skype™
Exclamation Редиректы в RealURL и .htaccess

Добрый день коллеги.
Обращаюсь к Вам с проблемой, которая меня вводит в депрессивное состояние. Описываю суть.

Поставил на сайт RealURL все отконфигурировал, сделал как нужно, все работает. Но вот незадача - текущий сайт был на ASP, я перенес его на typo3, раскрутчики испольльзовали старые адреса, типа - about.aspx. Встала задача следать редиректы со старых адресов на новые.
Редиректы без параметров (в конфигурации RealURL) проходят нормально типа: about.aspx на about.html, но вот как дело доходит до адресов типа: productsIndList.aspx?nodeID=1234 то появляется ошибка:
Reason: Segment "productsIndList.aspx" was not a keyword for a postVarSet as expected!

В мэйл-листе Дмитрий Дупелов сказал что в настройке RealURL такие фишки не проходят и посоветовал сделать редиректы через .htaccess
Я так и сделал, но эффекта не было, возвращалась та же ошибка.

Всязи с этим вопрос - как сделать тае чтоб все было нормально, а точнее - настроить редиректы. Есть ли конфликты между mod_rewrite и RealUrl? Как быть?

Очень надеюсь на ответ, потому как времени 1 день!
AleXUnder вне форума   Ответить с цитированием
Старый 01.08.2007, 19:51   #2
Valery Romanchev
Administrator
 
Аватар для Valery Romanchev
 
Регистрация: 23.08.2003
Адрес: Moscow, Russia
Сообщений: 1,926
Отправить сообщение для Valery Romanchev с помощью Skype™
По умолчанию

можно попробовать написать php код и вставить его в отдельный php файл и в htaccess страые урлы направлять на этот файл.
а в самом файле - уже вписать все условия и правила... и
в конце сделать редирект в PHP что-то типа header ("Location: ...
__________________
Веб-студия ТТЛАБ
www.ttlab.ru
Valery Romanchev вне форума   Ответить с цитированием
Старый 01.08.2007, 19:55   #3
AleXUnder
Senior Member
 
Аватар для AleXUnder
 
Регистрация: 10.01.2004
Сообщений: 201
Отправить сообщение для AleXUnder с помощью ICQ Отправить сообщение для AleXUnder с помощью Skype™
По умолчанию

а как нить попроще?
AleXUnder вне форума   Ответить с цитированием
Старый 08.08.2007, 00:21   #4
enot
Новенький
 
Регистрация: 02.11.2006
Сообщений: 24
По умолчанию

Цитата:
Сообщение от AleXUnder Посмотреть сообщение
Добрый день коллеги.
Обращаюсь к Вам с проблемой, которая меня вводит в депрессивное состояние. Описываю суть.

Поставил на сайт RealURL все отконфигурировал, сделал как нужно, все работает. Но вот незадача - текущий сайт был на ASP, я перенес его на typo3, раскрутчики испольльзовали старые адреса, типа - about.aspx. Встала задача следать редиректы со старых адресов на новые.
Редиректы без параметров (в конфигурации RealURL) проходят нормально типа: about.aspx на about.html, но вот как дело доходит до адресов типа: productsIndList.aspx?nodeID=1234 то появляется ошибка:
Reason: Segment "productsIndList.aspx" was not a keyword for a postVarSet as expected!

В мэйл-листе Дмитрий Дупелов сказал что в настройке RealURL такие фишки не проходят и посоветовал сделать редиректы через .htaccess
Я так и сделал, но эффекта не было, возвращалась та же ошибка.

Всязи с этим вопрос - как сделать тае чтоб все было нормально, а точнее - настроить редиректы. Есть ли конфликты между mod_rewrite и RealUrl? Как быть?

Очень надеюсь на ответ, потому как времени 1 день!
наверное уже поздно...

лично я, причину для конфликтов mod_rewrite и realurl не вижу
и mod_rewrite активно использую
вот недавно правило добавил

RewriteCond %{QUERY_STRING} tx_uf%5BNavBar%5D=5
RewriteRule ^nodes/mode/34/147/page\.html http://sitename.ru/comm/data/147/page.html?tx_uf[NavBar]=5 [R=permanent,L]

mod_rewrite срабатывает раньше
и последнее его правило
RewriteRule .* index.php [L]
передает эстафету в realUrl
все дело в правильной настройке правил для mod_rewrite

покажите конфиг для mod_rewrite...

не проверял но кажется так для Вас подойдет
RewriteRule ^(.+)\.aspx /$1.html?%{QUERY_STRING} [R=permanent, L]

ну еще мануал можно по mod_rewrite почитать

а про код на ПХП это видимо шутка?
enot вне форума   Ответить с цитированием
Старый 08.08.2007, 11:00   #5
AleXUnder
Senior Member
 
Аватар для AleXUnder
 
Регистрация: 10.01.2004
Сообщений: 201
Отправить сообщение для AleXUnder с помощью ICQ Отправить сообщение для AleXUnder с помощью Skype™
По умолчанию

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

вот то решение, которое применил я для строк с параметрами:

RewriteCond %{QUERY_STRING} ID=21 [NC]
RewriteRule ^catalog\.aspx$ http://domain/products/super-product.html? [NC,R=301,L]

Для редиректов без параметров я использовал вот что:
RedirectMatch Permanent ^/about\.aspx$ http://domain/about.html
AleXUnder вне форума   Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
RealURL и TMENU: need help theoretic Общие вопросы 9 06.07.2007 14:56
RealURL - лишние слеши в пути SteelMaster Общие вопросы 0 07.06.2007 16:34
Проблемы с realurl Irbis Установка 19 29.05.2007 14:42
RealUrl - смена хоста Alexa Общие вопросы 4 13.04.2007 11:20
RealUrl изменение alias'ов salah Общие вопросы 2 26.11.2005 19:54


Часовой пояс GMT +4, время: 16:28.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория