2013-12-24 7 views
0

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

Я пытаюсь RedirectMatch постоянным для URL-адресов, которые узорчатых как следующее:

http://www.mydomain.tld/topic000-my-name-slug.html

, где 000 представляет собой 1, 2 или 3-значный номер.

Я хочу, чтобы переписать эти адреса следующей схеме:

http://www.mydomain.tld/my-name-slug

Фраза «мое имя-тихоход» может изменяться по длине и всегда разделяет слова с дефисом. Я больше не хочу .html на конце.

Может ли кто-нибудь помочь мне с этим?

ответ

1

Попробуйте это:

RedirectMatch 301 topic[0-9]{1,3}-([\w-]+).html /$1 
+0

RedirectMatch 301 тему [0-9] {1,3} - ([\ ш -] +) HTML/$ 1. это тот, который работал. Благодаря! – sanitycheck

+0

@sanitycheck Хорошо, я его отредактировал – rullof

0

Try:

RedirectMatch 301 ^/[^-]*?[0-9]+-(.+)\.html$ /$1 

Или:

RedirectMatch 301 ^/topic[0-9]+-(.+)\.html$ /$1 

если исходный URL буквально начинается с "темы".

0

Это должно работать:

RewriteRule ^/topic[0-9]+-(.+)\.html$ /$1/ [R=301,L] 
Смежные вопросы