htaccess из старого URL форума на новый
До сих пор я всегда использовал htaccess для перезаписи URL-адресов, чтобы URL-адреса не были SEF, а URL-адреса SEF.
Сегодня я сталкиваюсь с новой проблемой, которая, честно говоря, будучи неуверенной в регулярных выражениях, я действительно не знаю, как ее достичь.
У меня есть ситуация, когда форум на моем веб-сайте был обновлен в следующей форме:
предыдущая ссылка: www.domain.com/forum3/topic/name-of-topic/post/7548
новая ссылка: forum.domain.com/Topic-name-of-topic/
Как мне перехватить /post/37764 строку и сказать htaccess, чтобы она не рассматривалась?
И как проинструктировать сервер для создания такого типа URL вместо провальных. Я очень смущен этим.
Любое предложение? Большое спасибо. Есть ли какой-нибудь ресурс, который я могу прочитать, чтобы помочь мне лучше понять ситуацию?
Еще раз спасибо.
РЕДАКТИРОВАТЬ
Флориан ответ правильный. Я просто добавил несколько модов, чтобы они лучше подходили.
RewriteEngine On
#RewriteBase /
RewriteRule ^forum3/topic/([^/]+)/post/[0-9]+$ http://forum.domanin.com/Topic-$1/ [L,R=301]
RewriteRule ^forum3/topic/([^/]+)-[0-9]+$ http://forum.domanin.com/Topic-$1/ [L,R=301]
1 ответ
Вы можете попробовать этот код:
RewriteEngine On
RewriteBase /
RewriteRule ^forum3/topic/([^/]+)/post/[0-9]+$ /Topic-$1/ [L,R=301]
/([^/]+)/
означает, что мы хотим перехватить строку, содержащую один или несколько символов, кроме /
предшествует и сопровождается /
,
Эта ссылка может помочь вам проверить ваши .htaccess
файлы: