301 перенаправление ссылок блога, которые не начинаются с `/blog`, в новое местоположение блога

У меня был сайт WordPress, на котором я переместил папки - http://example.com до http://example.com/blog.

Проблема в том, что многие сайты по-прежнему ссылаются на мои старые ссылки в блогах на /blog-post, поэтому, когда пользователи нажимают на них, они получают 404 . Примерно около 100 таких ссылок, однако они не все поддерживают одну и ту же структуру URL.

Например:

    /blog-post литий> /postname литий> /2016/01/01/post литий>

Есть ли какой-либо способ заставить эти ссылки переносить их в свои НОВЫЕ местоположения, что было бы просто добавлением /blog/?

3 голоса | спросил movecx 14 +03002016-10-14T16:54:18+03:00312016bEurope/MoscowFri, 14 Oct 2016 16:54:18 +0300 2016, 16:54:18

1 ответ


2

Попробуйте выполнить следующее в корневом файле .htaccess (с помощью mod_rewrite):

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} /(.*)
RewriteRule !^blog /blog/%1 [R=301,L]

Для всех URL-адресов, которые не запускаются /blog и не существуют в виде физических файлов (в корневом каталоге документа или в любом месте для это имеет значение), то 301 перенаправить на /blog/<whatever>.

Убедитесь, что вы очистили кеш браузера, если вы ранее протестировали 301s, которые потерпели неудачу.

ответил MrWhite 14 +03002016-10-14T20:59:40+03:00312016bEurope/MoscowFri, 14 Oct 2016 20:59:40 +0300 2016, 20:59:40

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132