Как перенаправить - переписать URL на короткие URL - PullRequest
0 голосов
/ 20 февраля 2011

Я изменил структуру URL своего сайта. Но индексированные URL Google выдают ошибку 404 not found. Теперь мне нужно правило перезаписи .htaccess для

От URL: www.mydomain.com/topic-titles-here-t273.html

По URL: www.mydomain.com/sub-folder/topic273.html

(Идентификатор темы должен кэшироваться, а заголовок темы должен быть удален.)

Иногда, как это тоже,

От URL: www.mydomain.com/topic-titles-here-t273-15.html

По адресу: www.mydomain.com/sub-folder/topic273-15.html

Я много искал, около трех часов, но не смог найти правильный ответ. Пожалуйста, помогите.

Ответы [ 2 ]

1 голос
/ 20 февраля 2011

Мне немного неясно, что вы пытаетесь сделать, но

1

RewriteRule    ^([a-z|-]+)(\d+\.html)$    /sub-folder/topic$2    [NC,L]  

Возьмет вторую группу (всего 273.html) и добавит соответственно, первая группа будет все раньше (topic-title-here-t)

это то, что вам нужно? Если это так, регулярное выражение можно привести в порядок, я просто хотел продемонстрировать две группы

update - Ok согласно редактированию, вторая группа просто становится

(\d{3}-\d+\.html)

если 273, использованное в этом примере, может быть длиннее 3 нуберов, если вы точно знаете, просто измените это число, в противном случае используйте +

0 голосов
/ 20 февраля 2011
RewriteRule ^([a-z0-9|-]+)t(\d+\.html)$ /redirect/topic$2 [NC,R=301,L]
RewriteRule ^([a-z0-9|-]+)t(\d+-\d+\.html)$ /redirect/topic$2 [NC,R=301,L]
...