Как перенаправить 301, например: подкаталог /Blog/
в /blog/
с .htaccess?301 redirect .htaccess
ответ
Путь, который сразу приходит на ум:
RewriteEngine on
RewriteBase /path/to/your/web/app
RewriteRule ^Blog$ blog [R=301,L]
RewriteRule ^Blog/(.*)$ blog/$1 [R=301,L]
Есть, вероятно, гораздо более эффективные способы, чем mod_rewrite, и я не уверен на 100%, что внешние переадресовывает будут работать, как они должны - вы, возможно, потребуется полный URL-адрес, но там вы идете.
Redirect 301 /Blog /blog
Или использовать что-то вроде http://www.htaccessredirect.net/index.php
Это самое простое решение .htaccess, поместите его в /.htaccess:
Redirect 301 /Blog /blog
Но это на самом деле ограничены. Если вы хотите, чтобы поймать все возможные случаи мудры опечатки, а также пересылать любые другие данные пути (например, /Blog/foo/bar.html), используйте вместо этого:
RedirectMatch 301 ^/[Bb][Ll][Oo][Gg](?<!blog)(/.*)?$ /blog$1
Для получения дополнительных возможностей, есть full .htaccess generators доступный.
Или вы можете использовать ModRewrite-based rules для максимальной гибкости, но это, вероятно, перебор.
Ваш второй пример также будет соответствовать '/ blog' в любой позиции. – Gumbo
Очень правильно - я бросился слишком быстро нажимать «Добавить ответ». Спасибо, что указали! REGEX исправлен. –
Да, действительно, этот способ лучше, чем все знаменитый: «Некоторые люди, столкнувшись с проблемой, думают:« Я знаю, я буду использовать регулярные выражения ». Теперь у них есть две проблемы». – Necronet