Я делаю некоторые постоянные перенаправления URL через .htaccess
Я использую следующий код:
Redirect permanent /someurl.html http://thedomain.com/newurl.html
Я бы хотел, чтобы редирект применялся к URL, которые заканчиваются на .htmlи что заканчивается не .html
пример
Redirect permanent /someurl.html http://thedomain.com/newurl.html Redirect permanent /someurl http://thedomain.com/newurl.html
Как можно достичь этого без двух строк (есть ли способ сокращения)?
Спасибо,
Вместо этого вы можете использовать RedirectMatch директиву . Он эквивалентен Redirect, но использует регулярные выражения.
Ваше правило будет выглядеть так:
RedirectMatch permanent someurl($|\.html) http://thedomain.com/newurl.html
Надеюсь, это поможет.
Я не уверен, что вы можете использовать регулярные выражения в Redirect заявлениях, но если вы можете, это должно работать:
Redirect
Redirect permanent /someurl(.html)? http://thedomain.com/newurl$1
Если вы не можете, вместо этого должен работать RewriteRule:
RewriteRule ^someurl(.html)?$ http://thedomain.com/newurl$1 [L,R=301]
или вы можете просто перенаправить по папке
Redirect permanent /one http://example.com/two
Примерно так
Прочитайте документацию / руководство здесь.http://httpd.apache.org/docs/2.0/mod/mod_alias.html#redirect