Свой сокращатель ссылок

Как-то раз ребята из журнала «Код» выпустили материал о том, как работают сокращатели ссылок.

В конце пообещали выпустить инструкцию о том, как создать собственный сокращатель. Однако инструкция так и не вышла в свет. Пришлось разбираться самостоятельно.

Оказалось, что собственный сокращатель ссылок — это несложно. Записывайте рецепт, если вам тоже надо.

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

Про домен и хостинг тоже можно почитать на «Коде»

Чтобы развернуть свой собственный аналог bit.ly и Кликера, понадобится домен, хостинг и база данных. Кроме того, стоит заранее подумать, как будут выглядеть будущие короткие ссылки. Тут проще объяснить на примере, смотрите:

Вне зависимости от того, какой вариант выберете, последовательность действий дальше одна и та же. Я завел себе отдельный домен, так что дальше буду рассказывать про этот вариант.

Скачиваем и настраиваем Yourls

Yourls — бесплатный скрипт, который будет делать всю работу: сокращать ссылки, вести их учет, считать цифры.

Скачиваем с Гитхаба последнюю версию скрипта, распаковываем архив и находим файл config-sample.php в папке /user

Переименовываем файл в config.php, открываем и вбиваем свои данные. Ловите шпаргалку ↓

Когда я разворачивал Yourls у себя на сайте впервые, база данных у меня была одна, и ей пользовался движок блога.

Не знаю, правильно ли это с точки зрения опытных программистов, но я настроил скрипт на ту же базу — ничего страшного не случилось. Все работало

Сохраняем, загружаем все на хостинг. Если вы не стали заморачиваться с доменами и поддоменами, просто создайте папку в корне вашего сайта и загрузите Yourls туда.

После этого вбиваем в адресную строку браузера что-то вроде https://<место, куда загрузили скрипт>/admin — попадаем в админку нашего сокращателя.

Готово! Заходим в админку с логином и паролем, которые прописали в config.php — теперь у вас есть свой собственный сокращатель ссылок.

Пользуемся

В целом внутри админки все интуитивно понятно. Но я все равно обозначу ключевые моменты.

Вот страничка на Гитхабе, где собраны разные плагины, локализации, темы

Yourls — это скрипт с открытым исходным кодом, поэтому в интернете можно найти массу плагинов, которые в той или иной степени улучшают его работу.

Лично у меня включен предустановленный Random ShortURLs, которые генерирует ссылки в таком вот духе: https://rschpk.ru/v6l3v

Еще я интегрировал Yourls в Alfred и Raycast. Но об этом уже как-нибудь в следующий раз.