Чем пингует модуль?
Прислано: Stargazer
сб, 13/02/2010 - 21:39
Вопрос по модулю xmlsitemap.
В общем такая шняга: у нас есть фактически два сайтмапа:
один по адресу http://some_site/sitemap.xml
второй в http://some_site/sitemap.xml/sites/default/files/xmlsitemap/xsm-[ru].xml
Тут понятно, что [ru] - это префикс языка для карты и сайта. Наверное при наличии контента на разных языках делает разные карты.
По логике вещей, первый - это виртуалка, которая рендерится по правилам gss.xsl, стилям gss.css и функции сортировки отрабатываются жабой gss.js.
Далее ... В админке в опциях модуля первой строкой нам тыкают туда, где расположена виртуалка т.е.
The sitemap is located at http://some_site.ru/sitemap.xml.
Вот тут самое интересное... При открытии карты по этому адресу происходит хардстайлерский тупинг(задержка секунд на 5). первое на чём это сказалось оказался гугл, который через два дня пометил карту красным стремным крестиком.
Назрел вопрос: "Какой именно url пингует модуль?". Тобишь... по моим подозрениям он пингует как раз виртуалку, генерируемую на лету, что очень плохо!
Полез в модуль и нашёл это:
<?php
function xmlsitemap_engines_submit_sitemap($engine, $url_var, $default_url, $language = null) {
$url_options = array ('absolute' => TRUE);
if (!is_null($language)) {
$url_options['language'] = $language;
}
$url = url('sitemap.xml', $url_options);
$url = strtr(variable_get($url_var, $default_url), array('[sitemap]' => $url));
$result = drupal_http_request($url);
if ($result->code == 200) {
watchdog('xmlsitemap', 'Sitemap successfully submitted to @engine.<br />Request: @url',
array('@engine' => $engine, '@url' => $url)
);
}
else {
watchdog('xmlsitemap', 'Error occurred submitting sitemap to @engine: @code.<br />Request: @url',
array('@engine' => $engine, '@code' => 0 + $result->code, '@url' => $url), WATCHDOG_ERROR
);
}
}
?>в xmlsitemap_engines.module
Кто-то может расшифровать параметры урл и что откуда хавается? Пока не успел забуриться столь глубоко в джунгли архитектуры и сам не могу на глаз определить, к сожалению.
Вопрос назрел потому, что на подопытном сайте сразу после установки модуля я смелов роботс воткнул директиву с адресом на виртуалку и теперь не имею 100% уверенности в том, что сожрал сёрч, однако он показывает на тот-же файл, что и был прописан.
- Stargazer's blog
- Для комментирования войдите или зарегистрируйтесь
