У овом посту ћу да поделим са вама како можете да креирате сопствени прилагођени скраћивач УРЛ-а домена користећи Цлоудфларе Воркерс. Без обзира да ли сте веб програмер који жели да дода још једну алатку у свој појас, власник предузећа који жели да брендира ваше везе без велике цене или само неко ко воли да се бави веб технологијама, овај водич корак по корак је за ти.
Као веб програмер и технолошки ентузијаста, увек сам био фасциниран малим стварима које интернет чине ефикаснијим и лакшим за коришћење. Једног дана, док сам са колегом делио посебно дуг и гломазан УРЛ, затекао сам себе да желим једноставан, персонализован начин да скратим везе. Наравно, постоји много услуга за скраћивање УРЛ-ова, али желео сам нешто што је више „ја“ – нешто што бих могао да прилагодим и контролишем.
Тада сам наишао на идеју да креирам сопствени прилагођени скраћивач УРЛ-ова користећи Цлоудфларе Воркерс. Било је то као проналажење скривеног блага у огромном мору веб технологија. Не само да сам могао скратити УРЛ адресе, већ сам то могао учинити и са својим именом домена, бесплатно! Узбуђење због овог открића подсетило ме је на први пут када сам поставио веб локацију – на тај налет оснаживања и бескрајних могућности.
Оно што је ово откриће учинило још узбудљивијим јесте схватање да оно може послужити као фантастична, бесплатна алтернатива популарним сервисима као што су Бит.ли или ТиниУРЛ за креирање брендираних кратких линкова на прилагођеном домену. Многа предузећа и појединци плаћају добар новац за ову врсту функционалности, али ево начина да постигнете исти резултат без трошења ни цента.
Корак 1: Региструјте име домена (користите кратак домен)
Први корак у креирању прилагођеног скраћивача УРЛ-а је регистрација имена домена. Ово ће бити основа ваших брендираних кратких линкова, па бирајте мудро!
Ево неколико савета који ће вам помоћи да изаберете савршен домен:
- Нека буде кратко: Читава поента скраћивача УРЛ адреса је да креира сажете везе. Потражите имена домена са 3-5 знакова ако је могуће. Ово може бити скраћеница, акроним или привлачна реч.
- Нека буде незаборавно: Одаберите нешто лако за памћење и откуцајте. Ово ће вама и другима олакшати коришћење ваших скраћених веза.
- Размотрите свој бренд: Ако ово користите за пословни или лични бренд, покушајте да ускладите домен са постојећим идентитетом бренда.
- Провери доступност: Кратки, привлачни домени су веома тражени. Можда ћете морати да будете креативни или размотрите алтернативне домене највишег нивоа (ТЛД) као што су .ио, .цо или .ме ако ваш први избор није доступан.
- Размислите о ТЛД-у: Иако је .цом популаран, не бежите од других ТЛД-ова. Неки, попут .линк или .цлицк, могу бити посебно прикладни за скраћивач УРЛ-а.
Ево неколико примера који ће вас инспирисати:
- абц.линк
- го.ио
- схрт.цо
- зап.ме
Када изаберете свој домен, мораћете да га купите од регистратора домена. Неке популарне опције укључују:
- Намецхеап
- ГоДадди
- цлоудфларе (Препоручено – што је такође веома згодно јер ћемо користити Цлоудфларе Воркерс)
Запамтите, иако ће домен коштати новац, то је једнократна куповина годишње, а остатак подешавања скраћивача УРЛ-ова биће бесплатан помоћу Цлоудфларе Воркерс-а.
Професионални савет: Пре него што завршите куповину, уверите се да домен није повезан са нежељеном поштом или злонамерном активношћу. Можете да проверите његову историју користећи алате као што су Домаин Тоолс или Ваибацк Мацхине.
Са својим сјајним новим доменом у руци, спремни сте да пређете на следећи корак: подешавање Цлоудфларе-а за ваш домен. Али то ћемо покрити у следећем одељку.
Корак 2: Конфигуришите ДНС записе за свој домен
Сада када имате свој домен, време је да подесите ДНС конфигурацију. Овај корак је кључан за осигурање да ваши Цлоудфларе Воркерс исправно функционишу са вашим новорегистрованим доменом.
Хајде да прођемо кроз процес:
1. Додајте свој домен у Цлоудфларе
- Ако то већ нисте учинили, направите бесплатан Цлоудфларе налог.
- На вашој Цлоудфларе контролној табли кликните на „Додај локацију“ и унесите име свог домена.
- Цлоудфларе ће скенирати постојеће ДНС записе. Избришите све записе које пронађе (осим ако домен не користите и за е-пошту или друге важне услуге, у ком случају их задржите).
2. Ажурирајте сервере имена (Занемарите овај корак ако је ваш домен регистрован на Цлоудфларе-у)
- Цлоудфларе ће вам обезбедити сет сервера имена.
- Идите на веб локацију свог регистратора домена и замените постојеће сервере имена онима које обезбеђује Цлоудфларе.
- Овај корак може потрајати до 24 сата да се прошири глобално.
3. Конфигуришите ДНС записе
- У вашим Цлоудфларе ДНС подешавањима, додаћемо два нова А записа.
- Додајте следеће:
Тип: A
ime: @
Садржај: 192.0.2.1
ТТЛ: Ауто
Статус проксија: Прокси (наранџасти облак - веома важно)
Тип: A
ime: ВВВ
Садржај: 192.0.2.1
ТТЛ: Ауто
Статус проксија: Прокси (наранџасти облак - веома важно)
Ова 192.0.2.1 ИП је посебна „лажна“ адреса. Резервисан је за документацију и тестирање, што га чини савршеним за наше потребе.
4. Омогућите Цлоудфларе проки
- Уверите се да је статус проксија (наранџаста икона облака) омогућен за ваш ДНС запис.
- Ово омогућава Цлоудфларе-у да прокси ваш саобраћај и неопходно је за функционисање Цлоудфларе Воркерс-а.
5. Потврдите конфигурацију
- Када се промена сервера имена прошири, Цлоудфларе ће приказати ваш домен као „Активан“.
- Ово можете да проверите на Цлоудфларе контролној табли.
Кључна ствар овде је да не усмеравамо ваш домен ни на један стварни веб хостинг. Адреса 192.0.2.1 је само чувар места. Ваш Цлоудфларе Воркер, који ћемо следеће подесити, пресреће све захтеве ка вашем домену и управљати логиком скраћивања УРЛ-а.
Професионални савет: Ово подешавање значи да не морате да плаћате или управљате било којим веб хостингом. Цлоудфларе Воркерс ће се носити са свим тешким дизањима, чинећи ово решење не само бесплатним већ и невероватно лаганим и лаким за одржавање.
Са правилно конфигурисаним ДНС-ом, сада сте спремни да пређете на узбудљив део – подешавање вашег Цлоудфларе Воркер-а да рукује скраћивањем УРЛ-а.
Корак 3: Креирање Цлоудфларе Воркер-а
Сада када имамо наш домен конфигурисан у Цлоудфларе-у, време је да креирамо Воркер-а који ће управљати нашим преусмеравањем. Цлоудфларе Воркерс обезбеђују окружење за извршавање без сервера које нам омогућава да покренемо наш код на ивици, близу наших корисника за оптималне перформансе.
1. Креирајте Цлоудфларе Воркер
- Приступ одељку за раднике:
- Пријавите се на своју Цлоудфларе контролну таблу.
- Идите до одељка „Радници“ са бочне траке.
- Кликните на „Креирај услугу“ ако је ово ваш први радник или „Креирај радника“ ако већ имате постојеће раднике.
- Именујте свог радника:
- Изаберите описно име за свог Воркер-а, као што је „управљач масовним преусмеравањима“.
- Кликните на „Креирај услугу“ да бисте прешли на уређивач.
- Писање Воркер скрипте:
- У уређивачу замените подразумевани код са скриптом за руковање преусмеравањем:
извоз подразумевано {
асинхронизовано преузимање(захтев) {
цонст редирецтМап = нова мапа([
["google", "хттпс://ввв.google.цом?субИд1=google"],
["бинг", "хттпс://ввв.бинг.цом?субИд1=бинг"],
// Додајте још преусмеравања овде по потреби
]);
цонст урл = нови УРЛ (рекуест.урл);
цонсоле.лог("Пуна УРЛ адреса:", урл.тоСтринг());
цонсоле.лог("Хостнаме:", урл.хостнаме);
цонсоле.лог("Патхнаме:", урл.патхнаме);
нека путања = урл.патхнаме.тоЛоверЦасе().реплаце(/^\//, '').сплит('/')[0];
иф (урл.хостнаме.инцлудес('воркерс.дев')) {
патх = урл.патхнаме.тоЛоверЦасе().реплаце(/^\//, '').сплит('/')[1] || '';
}
цонсоле.лог("Обрађена путања:", путања);
цонст лоцатион = редирецтМап.гет(патх);
цонсоле.лог("Преусмери локацију:", локација);
// Промени на 301 за трајно преусмеравање
ако (локација) {
ретурн Респонсе.редирецт(лоцатион, 302);
}
// Ако захтев није у мапи, вратите 404 или жељени резервни
ретурн нев Респонсе(`Није пронађено: ${патх}`, { статус: 404});
},
};
- Разумевање скрипте:
- Ми дефинишемо а редирецтМап који садржи наше кратке путање и њихове одговарајуће пуне УРЛ адресе.
["google", "хттпс://ввв.google.цом?субИд1=google"],
иоурсхортурл.цом/google преусмерава на -> хттпс://ввв.google.цом?субИд1=google
["бинг", "хттпс://ввв.бинг.цом?субИд1=бинг"],
иоурсхортурл.цом/бинг преусмерава на -> хттпс://ввв.бинг.цом?субИд1=бинг
- Скрипта обрађује долазне захтеве, издваја путању и проверава да ли одговара неком од наших дефинисаних преусмеравања.
- Ако се пронађе подударање, враћа 302 (привремено преусмеравање) на одговарајући УРЛ.
- Ако није пронађено подударање, враћа одговор 404 Није пронађено.
- Тестирање радника:
- Користите функцију „Брзо уређивање“ на Цлоудфларе контролној табли да унесете измене и тестирате свог Воркер-а.
- Можете да користите обезбеђени алат за ХТТП тестирање да симулирате захтеве и видите како ваш радник одговара.
- Распоређивање радника:
- Када будете задовољни својим тестовима, кликните на „Сачувај и примени“ да би ваш Воркер постао активан.
- Подешавање рута радника:
- Након постављања, идите на картицу „Триггерс“ за вашег радника.
- Додајте руту која одговара вашем домену, као што је *рецоммендс.линк/*.
- Ово осигурава да овај радник обрађује све захтеве ка вашем домену.
- Провера подешавања:
- Покушајте да приступите неким од ваших путања за преусмеравање (нпр. https://recommends.link/url-shortener-guide) како бисте били сигурни да раде како се очекује.
- Проверите Воркерс Логс на вашој Цлоудфларе контролној табли да видите излаз конзоле и проверите да ли се путање правилно обрађују.
Корак 4: Више прилагођавања (опционо)
Динамичка преусмеравања са Цлоудфларе КВ
Да бисмо наш систем преусмеравања учинили флексибилнијим и лакшим за управљање, можемо да користимо Цлоудфларе КВ (Кеи-Валуе) складиште за складиштење наших преусмеравања:
Креирајте простор имена КВ:
- На вашој Цлоудфларе контролној табли идите на Воркерс > КВ. Кликните на „Креирај простор имена“ и дајте му назив (нпр. „РЕДИРЕЦТ_МАП“).
- Идите на подешавања вашег Воркер-а. Испод „КВ Намеспаце Везивања“ додајте ново повезивање. Изаберите свој КВ именски простор и дајте му име променљиве (нпр. РЕДИРЕЦТС).
извоз подразумевано {
асинц дохват (захтев, енв) {
цонст урл = нови УРЛ (рекуест.урл);
цонст патх = урл.патхнаме.тоЛоверЦасе().реплаце(/^\//, '').сплит('/')[0];
цонст лоцатион = аваит енв.РЕДИРЕЦТС.гет(патх);
ако (локација) {
ретурн Респонсе.редирецт(лоцатион, 301);
}
ретурн нев Респонсе(`Није пронађено: ${патх}`, { статус: 404});
},
};
Сада можете да додајете, ажурирате или уклањате преусмеравања тако што ћете модификовати КВ продавницу без промене Воркер кода.
Параметризована преусмеравања
Дозволите динамичке параметре у вашим преусмеравањима:
извоз подразумевано {
асинц дохват (захтев, енв) {
цонст урл = нови УРЛ (рекуест.урл);
цонст [путања, ...парамс] = урл.патхнаме.тоЛоверЦасе().реплаце(/^\//, '').сплит('/');
нека локација = чекај енв.РЕДИРЕЦТС.гет(патх);
ако (локација) {
// Замени чуваре места стварним параметрима
парамс.форЕацх((парам, индекс) => {
лоцатион = лоцатион.реплаце(`{${индек}}`, парам);
});
ретурн Респонсе.редирецт(лоцатион, 301);
}
ретурн нев Респонсе(`Није пронађено: ${патх}`, { статус: 404});
},
};
Са овим подешавањем, могли бисте да имате КВ унос попут „продуцт“ : „хттпс://мисторе.цом/итем/{0}/детаилс“ и користите га као иоурсхортлинк.цом/продуцт/12345.
Кликните на Праћење и аналитика
Имплементирајте основну аналитику тако што ћете евидентирати догађаје преусмеравања:
извоз подразумевано {
асинц дохват (захтев, енв) {
цонст урл = нови УРЛ (рекуест.урл);
цонст патх = урл.патхнаме.тоЛоверЦасе().реплаце(/^\//, '').сплит('/')[0];
цонст лоцатион = аваит енв.РЕДИРЕЦТС.гет(патх);
ако (локација) {
// Евидентирај догађај преусмеравања
аваит енв.РЕДИРЕЦТС.пут(`${патх}_цлицкс`, (парсеИнт(аваит енв.РЕДИРЕЦТС.гет(`${патх}_цлицкс`) || '0') + 1).тоСтринг());
ретурн Респонсе.редирецт(лоцатион, 301);
}
ретурн нев Респонсе(`Није пронађено: ${патх}`, { статус: 404});
},
};
Странице прилагођених грешака
Уместо обичног текста 404 одговора, вратите прилагођену ХТМЛ страницу:
цонст нотФоундПаге = `
Веза није пронађена
боди { фонт-фамили: Ариал, санс-сериф; тект-алигн: центар; паддинг-топ: 50пк; }
Упс! Веза није пронађена
Кратка веза коју тражите не постоји.
`;
// У вашој функцији преузимања:
врати нови одговор(нотФоундПаге, {
статус: 404,
заглавља: { 'Цонтент-Типе': 'тект/хтмл' }
});
rate Лимитинг
Примените основно ограничење стопе да бисте спречили злоупотребу:
извоз подразумевано {
асинц дохват (захтев, енв) {
цонст ип = рекуест.хеадерс.гет('ЦФ-Цоннецтинг-ИП');
цонст ратеЛимитКеи = `рателимит:${ип}`;
цонст цуррентРекуестс = парсеИнт(аваит енв.РЕДИРЕЦТС.гет(ратеЛимитКеи) || '0');
иф (цуррентРекуестс > 100) { // ограничење од 100 захтева у минути
ретурн нев Респонсе('Ограничење брзине је прекорачено', { статус: 429 });
}
аваит енв.РЕДИРЕЦТС.пут(ратеЛимитКеи, (цуррентРекуестс + 1).тоСтринг(), {екпиратионТтл: 60});
// Остатак ваше логике преусмеравања овде
},
};
А / Б тестирање
Примените једноставно А/Б тестирање за ваша преусмеравања:
извоз подразумевано {
асинц дохват (захтев, енв) {
цонст урл = нови УРЛ (рекуест.урл);
цонст патх = урл.патхнаме.тоЛоверЦасе().реплаце(/^\//, '').сплит('/')[0];
цонст лоцатионА = аваит енв.РЕДИРЕЦТС.гет(`${патх}_А`);
цонст лоцатионБ = аваит енв.РЕДИРЕЦТС.гет(`${патх}_Б`);
иф (локацијаА && локацијаБ) {
цонст лоцатион = Матх.рандом() < 0.5 ? локацијаА : локацијаБ;
ретурн Респонсе.редирецт(лоцатион, 301);
}
// Повратак на нормално преусмеравање ако А/Б тест није подешен
цонст лоцатион = аваит енв.РЕДИРЕЦТС.гет(патх);
ако (локација) {
ретурн Респонсе.редирецт(лоцатион, 301);
}
ретурн нев Респонсе(`Није пронађено: ${патх}`, { статус: 404});
},
};
Ова прилагођавања и проширења додају значајну функционалност вашем систему за групно преусмеравање, чинећи га флексибилнијим, моћнијим и информативнијим. Свака од ових функција може се додатно побољшати и проширити на основу ваших специфичних потреба и случајева употребе.
Резиме: Креирање прилагођеног скраћивача веза са Цлоудфларе Воркерс-ом
Кроз овај блог смо истраживали како да креирамо моћан и флексибилан прилагођени скраћивач УРЛ-ова користећи Цлоудфларе Воркерс. Ово решење нуди бесплатан и ефикасан приступ стварању кратких веза у великом обиму.
ТЛ; ДР:
- Цлоудфларе Воркерс пружају платформу без сервера за имплементацију прилагођене логике преусмеравања са глобалном дистрибуцијом и малим кашњењем.
- Исправна ДНС конфигурација и подешавање Воркер Роутес-а су од кључне важности за повезивање вашег прилагођеног домена са Воркер-ом.
- Једноставан радник заснован на ЈаваСцрипт-у може ефикасно да се носи са сложеним сценаријима преусмеравања.
- Цлоудфларе-ов кључ-вредност (КВ) складиште може се искористити за креирање динамичких мапа преусмеравања које се лако могу управљати.
- Напредне функције као што су параметризована преусмеравања, праћење кликова, прилагођене странице са грешкама, ограничавање стопе и А/Б тестирање могу да се имплементирају у оквиру Воркер екосистема.
- Овај систем нуди значајне предности у односу на традиционални методе преусмеравања, укључујући побољшане перформансе, лакше управљање и побољшану флексибилност.
Решење које смо направили нуди неколико предности:
- скалабилност: Рукује милионима преусмеравања без деградације перформанси.
- еластичност: Лако додајте, модификујте или уклоните преусмеравања без промене основне логике.
- перформансе: Користи глобалну мрежу Цлоудфларе-а за брза преусмеравања широм света.
- Прилагођавање: Омогућава напредне функције као што су аналитика и А/Б тестирање.
- Исплативости: Користи архитектуру без сервера, потенцијално смањујући трошкове хостинга.
- Бесплатна алтернатива на популарне сервисе попут Бит.ли или Иоурлс за креирање брендираних кратких веза на прилагођеном домену.
Сада када разумете моћ и флексибилност овог система преусмеравања заснованог на Цлоудфларе Воркер-у, време је да га примените:
- Ако већ нисте, региструјте се за Цлоудфларе налог и упознајте се са платформом Воркерс.
- Примените овај систем за сопствене брендиране кратке везе или групна преусмеравања.
- Експериментишите са напредним функцијама о којима смо разговарали да бисте прилагодили систем вашим специфичним потребама.
- Поделите своја искуства или поставите питања у одељку за коментаре испод. Ваши увиди могу помоћи другима у заједници!
- За напредније случајеве коришћења или прилагођене имплементације, размислите о контактирању стручњака или консултантске услуге Цлоудфларе Воркерс.
Останите радознали, наставите да учите и не оклевајте да померите границе могућег помоћу алатки као што је Цлоудфларе Воркерс.