htaccess перенаправляет со старого сайта на новый сайт - PullRequest
2 голосов
/ 03 октября 2011

Существует существующий сайт h * tp: //www.oldsite.com/, который мне нужно перенаправить на новый сайт h * tp: //www.newsite.co.za/. Старый сайт уже настроен как припаркованный домен в учетной записи хоста сайта новостей. Ниже приведена файловая структура узла новостей. h * tp: //www.newsite.co.za/ - / public_html h * tp: //www.oldsite.com/ - /public_html/oldsite.com

Новостной сайт - это полная реструктуризация старого сайта, поэтому мне нужно было перенаправить все проиндексированные страницы старого сайта на некоторые соответствующие страницы сайта новостей. Мне удалось перенаправить статические страницы, но я испытываю трудности с динамическими страницами. Например:

h*tp://www.oldsite.com/The_Wine_Shop/Bales_Private_Vintners.aspx?CatID=13&PageID=175&RefPageID=169

до

h*tp://www.newsite.co.za/buy-wine/buy-wine-online/

Есть несколько страниц, которые необходимо перенаправить на основе приведенного выше примера формата. Что будет самым простым способом сделать перенаправления. Я думаю просто перенаправить все файлы внутри папки «The_Wine_Shop», включая динамические страницы, но я не имею ни малейшего представления, как это сделать в этом формате.

Кстати, вот код для перенаправления страницы индекса с старого сайта на новостной сайт.

Options +FollowSymLinks
RewriteEngine On
RewriteCond  %{HTTP_HOST}  ^oldsite\.com [OR]
RewriteCond %{HTTP_HOST} ^www.oldsite\.com
RewriteRule  ^/?(.*)  http://www\.newsite\.co\.za/$1 [R=permanent,L]

1 Ответ

1 голос
/ 10 ноября 2011

Вы можете добавить другой набор правил в ваш .htaccess:

RewriteCond %{REQUEST_URI} ^/The_Wine_Shop/
RewriteRule ^(.*)$ http://www.newsite.co.za/buy-wine/buy-wine-online/ [R=301,L]

Это перенаправит каждую страницу, начинающуюся с /The_Wine_Shop/.

Если вы хотите проверить запрошенный URI и строку запроса, вы можете выполнить что-то вроде этого:

RewriteCond %{REQUEST_URI} ^/The_Wine_Shop/Bales_Private_Vintners\.aspx$
RewriteCond %{QUERY_STRING} CatID=13
RewriteCond %{QUERY_STRING} PageID=175
RewriteCond %{QUERY_STRING} RefPageID=169
RewriteRule ^(.*)$ http://www.newsite.co.za/buy-wine/buy-wine-online/ [R=301,L]

Если вам все равно, будет ли URL прописным или строчным, добавьте NC-Flag к условиям.

Вы также должны добавить тег <link rel="canonical" href="http://new-and-correct-url" /> на свои новые сайты <head>.

Подробнее info по rel canonical.

...