Почему Astro + Cloudflare Pages
Когда я начинал делать сайт-портфолио, передо мной стоял простой выбор из двух зол:
- Хостинг в РФ (reg.ru, beget) — работает из РФ, но платный SSL, нет нормального CDN, боты в поддержке
- Западный хостинг (Vercel, Netlify) — быстро и красиво, но РФ-проблемы, и всё равно платно
Cloudflare Pages — третий путь: глобальный CDN, бесплатный SSL, 0 ₽ за хостинг, и при этом без блокировок со стороны РФ (Cloudflare не в санкционных списках, у них есть PoP в Москве).
Что в стеке
Astro 5 — статический генератор (HTML на выходе)
MDX — для блога, когда SEO-статьи дойдут до очереди
Cloudflare — хостинг, CDN, DNS
Geist Sans — шрифт (через @fontsource)
Никаких React, никаких баз данных, никаких SSR. Чистая статика, которая собирается за 2-3 секунды и грузится моментально.
Сколько стоит
| Компонент | Цена |
|---|---|
Домен .ru | 500 ₽/год (≈ 42 ₽/мес) |
| Cloudflare Pages | 0 ₽ |
| SSL | 0 ₽ |
| Workers Paid | не нужен |
| Итого | ~50 ₽/мес |
Что в планах
- Блог на MDX — структура уже под него готова
- 3 отдельных лендинга под направления (
/hotels,/salons,/marketplace) — уже сделано - Astro View Transitions — плавные переходы между страницами
- OG-картинки на лету — через Cloudflare Workers, если понадобится
Что мне понравилось
- Astro 5 + View Transitions — нативно, без JS-фреймворка, ~30kb JS на всю страницу
- Cloudflare Pages Functions — для контактной формы, бесплатно до 100k запросов/день
- Telegram-уведомления из формы — 50 строк JS, деплой за 5 секунд
- Geist font — через
@fontsource-variable, без Google Fonts
Если у вас похожая задача (лендинг для фрилансера, небольшого бизнеса, pet-project) — пишите в @daoqub, расскажу подробнее или соберу вам такой же.
Этот сайт собран за один вечер на Astro 5 + Cloudflare Pages. Исходники — в репозитории.