Использование тега canonical

January 23rd, 2010 Begemot

Недавно озаботился тем как гугл обрабатывает мои страницы если я использую ссылки с параметрами, причем эти параметры нужны только для страницы и не влияют на содержимое. Люблю я ссылаться так http://clipdiary.com/?s=fromblog или  http://clipdiary.com/?s=reclamacnn или ?s=menu, ?s=nagscreen etc, все время думаю что потом проанализирую, разумеется не анализирую, но ссылаться все равно люблю 🙂

Недавно заметил в google webmaster tools –> Links to your site –> много таких ссылок (видимо народ приходит с программы на сайт, копирует ссылки и потом она уже расползается по инету) и задумался а как гугл их обрабатывает – понимает ли он что это все одна страница или нет ? С одной стороны гугл умный, с другой – на странице есть динамическое содержание – так что хз. В сврусе подсказали что есть специальный тег rel="canonical". То есть просто во все “дублирующиеся” страницы добавляем <link rel="canonical" href="наш правильный урл"> и типа все будет ок. Подробнее о теге canonical

Сегодня подправил движок сайта таким образом что бы если в запрашиваем урле есть строка запроса (?someparameters) то мы в <head> автоматически добавляем  ссылку на “каноническую страницу” – эту же, но без строки запроса. имхо изящно:) Работы мало – порядку больше. Теперь осталось посмотреть  изменятся ли данные в webmaster tools.


Про правильные редиректы

April 23rd, 2009 Begemot

Пытаюсь считать закачки дистрибутива на сайте, механизм просто – ссылка ведет на http://clipdiary.com/download/clipdiarysetup.exe

в .htaccess мы его редирестим на наш скрипт

RedirectTemp /download/clipdiarysetup.exe _http://clipdiary.com/download/clipdiary.php

clipdiary.php в свою очередь, после увеличения счетчика, выдает уже сам ехе файл

$Name[http://clipdiary.com/download/clipdiary_2.1.exe]
$response:location[$Name]
$response:content-type[application/downloads]
$response:content-disposition[attachment^;filename=$Name]

(это парсер, не php)

Механизм используется годами. Раньше вроде было все ок, потом я заметил, что если качать Download Master‘om то выдается ошибка “вместо файла выдается html страница и скачать файл невозможно”, но решил что трабла у меня (странный я, да?). А поскольку качаю я обычно броузером то ошибка глаза не мозолила, но потом пожаловался пользователь…

Вообщем проблема решилась благодаря коллективному разуму swrus’a и особенно Александру. В кратце, что нужно сделать

1. Перейти на использование mod_rewrite, для этого заменить

RedirectTemp /download/clipdiarysetup.exe _ttp://clipdiary.com/download/clipdiary.php

на (в файле /download/.htaccess)

Options +FollowSymlinks
RewriteEngine on

RewriteRule clipdiarysetup.exe clipdiary.php   [QSA]

2. Перестать выдавать content-type и content-disposition,  response:location – вполне достаточно

Теперь все работает как часы.

p.s. Как тяжко иметь много сайтов, везде менять запаришся 🙁