#веб_программирование #ссылки
На текущий момент времени актуальна проблема, что URL многих документов в сети становятся очень длинными и труднозапоминаемыми. К тому же, чем больше букв - тем легче опечататься и попасть не туда. Зачастую этим пользуются мошенники. В связи с этим, появился новый класс полезных сайтов - укорачиватели ссылок. Они позволяют создать переадресацию с короткого адреса на нужный пользователю сайт. При этом эта переадресация постоянна. Например, goo.gl/jmKfD указывает на страницу по адресу http://ru.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D0%91%D0%BE%D0%B9%D0%B5%D1%80%D0%B0_%E2%80%94_%D0%9C%D1%83%D1%80%D0%B0 Так вот. Мне лично представляется возможным два варианта реализации подобных сервисов. Сжатие ссылки по какому-либо алгоритму обработки текстовой информации. Создание базы данных с ссылками, при этом доступ к каждому элементу будет производиться по номеру. Из минусов - сразу ясно, что база данных со временем будет расти. А это требования к памяти и быстродействию. Есть ли еще какие-либо варианты?
Ответы
ok.php "; if ($url == '') { exit("Не введена ссылка!"); } if(!is_dir($cuturl)) { mkdir("$cuturl", 777); chdir("$cuturl"); $fd=fopen($BASE,"a+"); fwrite($fd,$info); fclose($fd); } else { echo "Такая ссылка уже существует!"; } ?>Ответ 1
Второй вариант — т.к. напр. bit.ly даёт возможность самому придумать вариант короткой ссылки. Не обязательно с БД, это же просто словарь: ключ-URL. Миллион ссылок займёт около 256 мегов памяти всего. Если совсем большой сервис, можно разбить напр. на 26 серверов, по 1-й букве ключа. Где каждый сервер держит в оперативке весь набор данных своего сегмента.Ответ 2
index.html
Ответ 3
Укорачивание ссылки производится простым вычислением хэша ссылки. Далее хэш ложится в таблицу ссылок по 2-му варианту с индексированием по полю хэша.
Комментариев нет:
Отправить комментарий