Geocoding за допомогою Cloudflare

2
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 31 січня, 2026
Я використав заголовок CF‑IPCountry від Cloudflare, щоб показувати банер із знижкою з урахуванням купівельної спроможності відвідувачів сайту і водночас спростити код. Хочете дізнатися, як проста трансформація URL-адреси дозволила видалити сотні рядків коду й зробити сторінки кешованими та швидшими?

Пропоную Laravel Shift за «20 баксів». Але ця сума може відрізнятися залежно від країни, тож якщо у вашій державі долар має на 50% меншу купівельну спроможність, я застосовую паритет купівельної спроможності.

Щоб визначити вашу країну, я використовую сервіс геокодування, який зіставляє IP з країною. Якщо це держава, для якої діє коригування, у верхній частині сторінки з’явиться банер із пропозицією активувати знижку.

Працюючи над прискоренням laravelshift.com через Cloudflare, я натрапив на ще один їхній безкоштовний сервіс — геокодування. Cloudflare додає заголовок країни до запиту перед його передачою на ваш вебсервер.

Заголовок CF-IPCountry — це дволітерний код країни, наприклад US або UK. У моєму випадку я використовував цей заголовок напряму, зіставляв код із назвою країни і перевіряв паритет купівельної спроможності.

Це дало дві переваги: по-перше, я прибрав сотні рядків коду; по-друге — зміг кешувати сторінку.

Раніше логіка перевірки заголовків робила сторінку надто динамічною для кешування, тому після завантаження доводилося робити API-запит для визначення країни.

Окрім зайвого коду, це був ще один, хоч і легкий, запит.

Оскільки заголовок доступний на рівні Cloudflare, я створив transformation rule, яка перевіряє код країни й додає відповідний query string до запиту.

Це дозволило кешувати дві версії сторінки: стандартну й ту, що показує банер паритету купівельної спроможності.

Також зазначу, що оскільки це опційна функція, місцезнаходження перевіряється вдруге перед активацією знижки.

Якщо хочете побачити повний рефакторинг коду, я стрімив це для курсу Confident Laravel.

А якщо прагнете пришвидшити завантаження своїх сторінок, зазирніть у мій майбутній відеокурс Fast Laravel.

Популярні

Logomark Logotype

Laravel Boost — ваш стартовий набір для програмування з використанням штучного інтелекту

Вперше у світі Laravel з'являється можливість, яка значно спростить ваше повсякденне програмування завдяки новому пакету Laravel Boost. Читайте статтю, щоб дізнатися, як посилена інтеграція штучного інтелекту може підвищити ефективність вашої роботи та оптимізувати створення проектів у Laravel

Logomark Logotype

4 поширені помилки Vite у Laravel

Використання Vite для створення фронтенд-ресурсів у вашому додатку Laravel може бути захоплюючим, але іноді ви можете стикнутися з певними помилками. У цій статті ми розглянемо чотири поширені помилки, з якими ви можете зіткнутися, а також підкажемо способи їх усунення, щоб ви могли знову зосередитися на розробці вашого додатку

Logomark Logotype

Усе, що нам відомо про Livewire 4

Нова версія Livewire 4, представленої Келебом Порзіо на Laracon US 2025, обіцяє значні покращення у швидкості та організації компонентів. Які з інноваційних функцій підкорять ваше серце? Читайте далі, щоб дізнатися більше про те, як Livewire 4 полегшить вашу роботу