Как спрятать ссылки
Индекс материала |
---|
Как спрятать ссылки |
Как спрятать ссылки стр.2 |
Как спрятать ссылки стр.3 |
Все страницы |
Иногда на страницах сайта требуется спрятать от роботов некоторые ссылки. Нет - речь пойдёт не о клоакинге или чёрном сео, а о нормальной оптимизации сайта. Как известно некоторые движки грешат избыточностью ссылок в своих компонентах и модулях, Взять к примеру ту же Joomla с её индексом материала, прибавьте к нему постраничную навигацию - в итоге получаем дублированные ссылки на странице - оно вам надо?
Кстати, если вам лень читать статью, или попросту нет времени вникать во всё это, то здесь Я разместил этот скрипт ввиде онлайн инструмента.
Так вот. Роботы пока не научились интерпретировать JavaScript, но по слухам вполне ничего себе так заглядывают в его код. Поэтому конструкции типа:
document.write('<a href="/somedomain.net">ля-ля-тополя...</a>');
похоже прокатывают уже через раз. Народ придумал шифровать ссылки в формат кодовых точек unicode, ну типа того: \u003c\u0061\u0020\u0063 есть онлайн сервисы для подобных операций, но что делать если выводимые ссылки формируются движком динамически? Что - что... читать-понимать принцип кодирования многобайтных кодировок в unicode. Что такое unicode и ASCII спросите у google он должен знатьЕсли у вас сайт в модной нынче кодировке UTF-8 а расширения типа mb_string и iconv вам не доступны (бывает и такое) или просто интересно, как это можно сделать самому, то читайте дальше.
Итак. В unicode существуют так называемые "кодовые точки", которые имеют вид: U+007F или U+0400. После префикса U+ следует шестнадцатиричное число ( предварённое нулями ). Фактически это порядковое шестнадцатиричное число позиции символа: U+006B это 6B в шестнадцатиричной, или 107 в десятичной системе или маленькая латинская буква "k" в соответствии с ASCII.
В диапазоне от U+0000 до U+007F ( это интервал от 0 до 127 в десятичном представлении) число после "U+" совпадает с шестнадцатиричным кодом символа в ASCII. Это диапазон латиницы и других печатных/не печатных символов (типа пробела и пр.) то есть символов для хранения и обработки которых требуется 1 байт. После U+007F - кодовые точки unicode следуют далее по порядку, а вот нормальное их шестнадцатиричное представление символов там уже требует 2 байта, т.е. 4 - шестнадцатиричных цыфры: U+0080 соответствует С2 80 (какой то непечатный символ).
Принцип кодирования многобайтных символов следующий:
Unicode (шестнадцатиричный) | Unicode ( двоичный ) |
---|---|
0x0000 – 0x007F | 0xxxxxxx |
0x0080 – 0x07FF | 110xxxxx 10xxxxxx |
0x0800 – 0xFFFF | 1110xxxx 10xxxxxx 10xxxxxx |
Вы всё еще здесь? Теперь интересное. В таблице видно что для однобайтного символа двоичное представление начинается с 0, а вот для многобайтного с 1. Причем количество единичек в первом байте (ещё его называют стартовым байтом многобайтовой последовательности ) прямо указывает на количество байт нужных для кодировки данного символа. Далее идут серийные байты которые начинаются с 10, и количество которых определено в стартовом байте. Ну а биты символа unicode упаковываются в "транспортные" биты стартового и серийных байтов, обозначенных выше как "xxxx"
Саморезы по дереву цена
Сертифицированные саморезы по дереву цена производителя в Москве.
dominant-krep.ru
Добавить комментарий
Информация копипастерам
Внимание! Копирование контента с сайта, возможно только с разрешения администратора. Т.е. Меня! Я скорее всего разрешу Вам это сделать, в обмен на живую ссылку, на статью оригинал.