Короче для восстановления сайтов я пользуюсь сервисом r-tools. Он прекрасен до определенной степени.
Восстановил я сайт (имя которому не имеет особого значения). Залил на хост и смотрю по вебархиву, а ЧПУ не сходится.
А ЧПУ оказалось сделано по старым методикам. т.е.
?a=1
R-tools все перелопатил как вздумалось и сделал ЧПУ вида:
_a=1.html
т.е. все старые ссылки которые ссылаются на домен теперь ссылаются куда попало только не на наши страницы.
Что делать ?
Ломать ЧПУ полностью !
Что бы восстановить ЧПУ пришлось создать мифический index.php, и на него в .htaccess натравить все запросы:
DirectoryIndex index.php
А в r-tools конфиге сделать исключение для файла index.php вот так:
RewriteCond %{REQUEST_FILENAME} !/index.php$
Дальше надо index.php что бы ловил все запросы, а параметры выдергивать. Это легко:
$p = $_REQUEST['a'];
Дальше нужно отдавать на выход содержимое. Причем если внутрянняя страница — одно, а если главная, то по другому, да и вход фильтровать надо тоже:
if (preg_match("/^\d+$/",$p)) $in = file_get_contents("_p=$p.html"); else $in = file_get_contents("index.html");
Дальше если отдать все на выход как есть, то по законам r-tools нам не вставится ни end.txt ни head.txt .. и получится голая страничка, поэтому нужно все самому профильтровать и с делать небольшой аналог r-tools обработчика.
На самом деле это по 2 строчки кода:
$head = file_get_contents(".__route/head.txt"); $end = file_get_contents(".__route/end.txt"); $in = str_replace("</head>", "$head</head>", $in); $in = str_replace("</body>", "$end</body>", $in);
Теперь можно отдавать на выдан и все нужные Метрики приаттачатся как надо.
По сути наш сайт теперь принимает ссылочное как надо на старый ЧПУ и мы не теряем вес страниц. Осталось одно. r-tools поломал и самиссылки внутри HTML страниц.
Что бы починить нужно пробежаться по всем HTML файликам и сменить ЧПУ, это делается (не считая загрузки и записи) в однумаленькую красивую строчку:
$in = preg_replace( "/_p\=(\d+?)\.html/", '?p=$1', $in, -1, $count );
Вот и все. Финита комедия. К сожалению данный функционал не внедрен в сам r-tools т.к. такие махинации не всегда так однозначны и требуют поглаживания рукой каждый сайтик. но тикеты у Кохи (автора r-tools) есть.
p.s. Коха, у тебя прекрасный сервис, почини баг с кусками от WA.. будь мужыкомъ!