Sep 13, 2026

How to Improve Website Access for Russian Visitors with Regional CDN Routing

A laptop beside a globe, with connected regional servers illustrating CDN delivery across Eurasia.

If your website is hosted on Cloudflare, Vercel, Netlify, or another international hosting platform, you may notice a frustrating problem: your website works perfectly for you, but visitors in Russia experience slow loading, unreliable connections, or difficulty accessing the site.

The rest of your international audience may have no trouble at all. Moving your entire website to another host just to solve a regional access problem can mean unnecessary work. Sending everyone around the world through a Russian CDN may not suit your audience either.

Regional CDN routing lets you route visitors from selected countries through a CDN with infrastructure closer to them, while keeping your existing hosting for everyone else. It can support a static business website, product landing page, documentation site, portfolio, or blog.

This guide explains the setup I use on russiadecoding.com, with Cloudflare handling the geographic redirect and Timeweb CDN delivering the regional version. The same general approach can also be used with Vercel, Netlify, and other hosting platforms.

Affiliate disclosure: The Timeweb links in this post are affiliate links. If you purchase through them, I may earn a commission.

Why a website can work abroad but struggle in Russia

A website can be fast in Europe or North America and still be difficult to access from Moscow, St. Petersburg, or Novosibirsk. Depending on the visitor’s ISP and the network route to your hosting provider, the problems may include:

  • Pages that take too long to open or fail to load.
  • Images, fonts, and JavaScript that load slowly or remain missing.
  • Intermittent connection errors that are hard to reproduce from abroad.
  • A homepage that opens while the rest of the site remains unusable.

For a business website, this can mean visitors leaving before they see your services. For a documentation site, it can leave customers unable to find instructions. Improving access starts with the connection those visitors actually have, rather than your site’s global average load time.

One website, two delivery paths

A content delivery network, or CDN, stores copies of content on distributed servers. A regional CDN gives selected visitors an alternative delivery path. Visitors outside Russia can keep using the delivery path they already have, while visitors in Russia can be sent to a CDN with infrastructure closer to them.

Visitor opens russiadecoding.com
Visitors outside Russia

Visitor → Cloudflare / Vercel / Netlify → your website

Visitors in Russia

Visitor → existing website → geographic redirect → Russian CDN → your website

On a cache miss, Timeweb fetches the page from the existing website using a private origin request header. You still maintain one source of content.

Visitors routed through Timeweb will see cdn.russiadecoding.com in their address bar, with the original page path preserved.

The automatic redirect requires the initial connection to Cloudflare to succeed. If that connection fails completely, visitors will need the direct CDN address or another entry point. Timeweb also needs access to the origin to retrieve fresh content.

Why I use Timeweb CDN for this setup

I use Timeweb CDN because it has CDN infrastructure across Russia. Its published CDN locations include Vladivostok, Yekaterinburg, Irkutsk, Kazan, Kaliningrad, Krasnodar, Krasnoyarsk, Makhachkala, Moscow, Nizhny Novgorod, Novosibirsk, Norilsk, Omsk, Rostov-on-Don, Samara, St. Petersburg, Simferopol, Stavropol, Tyumen, Ufa, Khabarovsk, Khimki, and Chita.

This coverage is why I recommend Timeweb for this use case: it provides a regional delivery network for visitors across Russia while the original website stays with its existing host.

You do not necessarily need to move your website

One of the main advantages of regional routing is that your primary website can stay where it is. If your site is hosted at a platform address such as rldblog.pages.dev and uses russiadecoding.com as its custom domain, you can keep using that existing hosting setup.

Create a separate CDN hostname, such as cdn.russiadecoding.com. The CDN pulls content from your existing website, so you keep one source of pages and assets while adding another delivery route.

                         Your website
                              │
                              │
                    ┌─────────┴─────────┐
                    │                   │
              International          Russia
                  visitors            visitors
                    │                   │
                    ▼                   ▼
               Cloudflare          Timeweb CDN
                    │                   │
                    └─────────┬─────────┘
                              │
                              ▼
                       Your existing site

This arrangement preserves your current hosting infrastructure while giving visitors in Russia a separate path.

Automatically redirect visitors in Russia

The next step is making this automatic.

You don't want to tell your Russian readers:

“If you're in Russia, please visit our CDN URL instead.”

That is inconvenient and confusing.

Instead, Cloudflare, Vercel, or Netlify can inspect the connection’s country and send visitors in Russia to the alternative CDN hostname automatically.

https://russiadecoding.com/
           ↓
https://cdn.russiadecoding.com/

The original path and query string can be preserved during the redirect, so a request for an internal page follows the same route as the homepage. Visitors outside the selected countries continue using the primary hostname.

Set up regional routing with Cloudflare and Timeweb

1. Prepare the CDN hostname and origin

Start with a working website and a domain you control. In this example, the main website is russiadecoding.com, the CDN hostname is cdn.russiadecoding.com, and Timeweb retrieves content from the main website over HTTPS on port 443.

Create the CDN resource, add your delivery hostname, and create the DNS record using the target Timeweb assigns. When managing this DNS record in Cloudflare, use DNS-only mode for the CDN hostname so visitors connect to Timeweb. Your main hostname needs to pass through Cloudflare for its Redirect Rule to run. Enable a valid certificate for the delivery hostname before directing visitors to it.

Follow Timeweb’s origin and delivery-domain instructions. Check that the origin Host header and TLS server name match the hostname your hosting platform accepts. Do not point the CDN back to its own delivery hostname.

2. Identify requests from the CDN to the origin

One important technical detail

There is one complication when the CDN uses your primary domain as its origin. In this example, cdn.russiadecoding.com retrieves its content from russiadecoding.com.

Visitor in Russia
      ↓
russiadecoding.com
      ↓
Cloudflare
      ↓
cdn.russiadecoding.com
      ↓
Timeweb CDN
      ↓
russiadecoding.com

The request from Timeweb arrives at the same primary hostname as the original visitor request. Cloudflare can see a Russian IP address again and apply the country redirect a second time. The CDN is sent back to itself, creating a redirect loop and the familiar “Too many redirects” error.

Preventing CDN-origin redirect loops

The fix is to give Timeweb a private request header when it fetches the origin. Use a long, random value, for example:

X-Timeweb-Origin: YOUR_RANDOM_SECRET

Cloudflare can then redirect requests without that header and let the matching Timeweb origin request pass through. The two paths are:

Visitor in Russia
      ↓
No CDN header
      ↓
Redirect to Timeweb CDN
Timeweb CDN
      ↓
Private origin header
      ↓
Do not redirect
      ↓
Serve the website

In the Timeweb resource’s HTTP-header settings, add an origin request header named X-Timeweb-Origin with a long, randomly generated value. Timeweb documents this in its HTTP-header settings. Keep the value in provider configuration and use the same value in the Cloudflare exception below.

The redirect rule checks the exact header value, so the Timeweb request can retrieve the page without being redirected back to the CDN. This header is only a routing signal; it is not a replacement for authentication on private content.

3. Create the Cloudflare Redirect Rule

Create a Single Redirect using a custom filter expression. Replace the domain and secret placeholder with your own values. This example is for public pages and assets, so it matches only GET and HEAD requests.

(http.host eq "russiadecoding.com"
 and ip.src.country eq "RU"
 and http.request.method in {"GET" "HEAD"}
 and not any(http.request.headers["x-timeweb-origin"][*]
   eq "REPLACE_WITH_YOUR_RANDOM_SECRET"))

Cloudflare’s request-header field uses lowercase header names. The exception allows Timeweb’s matching origin request to retrieve the content even when its IP address matches the country condition.

Set the dynamic target expression to:

concat("https://cdn.russiadecoding.com", http.request.uri.path)

Choose 302 — Temporary Redirect and turn on Preserve query string, following Cloudflare’s Single Redirect settings. A request for /services?ref=newsletter then keeps that path and query on the CDN hostname. Use a temporary redirect for geographic routing so visitors are not permanently tied to the regional hostname.

4. Optionally include Kazakhstan, Uzbekistan, and Turkmenistan

To include these countries, replace the Russia-only country condition with:

ip.src.country in {"RU" "KZ" "UZ" "TM"}

These codes mean Russia, Kazakhstan, Uzbekistan, and Turkmenistan. Keep the rest of the rule, including the origin-header exception.

As checked on September 13, 2026, Timeweb’s location list includes Akkol, Almaty, Astana, Karaganda, and Kostanay in Kazakhstan, as well as Tashkent and Ashgabat. Cloudflare’s public network list names Aktobe, Almaty, and Astana in Kazakhstan, but does not list a location in Uzbekistan or Turkmenistan.

What changes for Vercel and Netlify?

The idea stays the same: identify the target connection, redirect eligible page requests, and let the CDN fetch content without triggering that redirect again.

Vercel exposes a country request header that server-side routing logic can use. Netlify documents country-based redirects. Include an origin-request exception in the routing logic, or use a separate origin hostname that does not trigger the geographic redirect.

Test website access before rollout

  • Compare both routes. From Russian home and mobile networks, check the original address, the redirect, and the direct CDN address. Also verify that a connection outside the selected countries stays on the main site.
  • Open more than the homepage. Test an internal page, a missing page, images, fonts, scripts, and URLs with query parameters. Follow internal links; absolute links to the main domain can send visitors through another redirect.
  • Check fresh and cached content. A warm CDN cache can hide an unreachable origin. Confirm a cache miss works, publish a small content change, and verify that the updated page reaches the CDN.
  • Inspect errors before purging. A 403 can come from an origin rule, host mismatch, or access policy. If cache headers show an older response is being served, purge the affected content after fixing its cause.
  • Review interactive features separately. Timeweb’s documented CDN methods are GET, HEAD, and OPTIONS. Do not send login submissions, payments, or other POST requests through this example. Even GET pages may be private; exclude account routes and prevent shared caching of personalized responses. Cookies, CORS, and third-party resources also need testing on the new hostname.

Keep a rollback simple: save the previous configuration and be ready to disable the geographic rule. Monitor page-load failures and response times on both routes after rollout.

Keep a clear primary URL for search engines

The CDN serves the same pages under another hostname. Use an absolute canonical URL pointing to the corresponding page on the primary domain, and keep sitemap URLs consistent with that choice. Google’s canonicalization guidance explains how these signals help consolidate duplicate URLs.

Check the HTML delivered from both hostnames. A canonical generated from the incoming request host can accidentally identify the CDN copy as primary. Canonical metadata belongs in the document; it should not become a forced redirect that sends regional visitors straight back to the main hostname. Review analytics too, so the hostname change does not make visits harder to understand.

A service from Russia Decoding

Regional CDN Routing

If your website works abroad but visitors in Russia struggle to access it, I can handle the regional CDN setup through Russia Decoding, from diagnosing the access problem to testing the finished configuration. You keep your existing website and hosting, with a regional delivery path built around your visitors’ needs.

The service covers:

  • Access diagnosis and routing design. Review your hosting, domain setup, and affected pages to identify where access fails and plan which countries and content should use the regional CDN.
  • Timeweb CDN and domain integration. Set up the CDN resource, connect it to your existing origin, configure DNS and the delivery hostname, and resolve origin connection and host-header issues.
  • SSL certificate setup and HTTPS. Configure the certificate for your CDN hostname and check HTTPS connections between visitors, the CDN, and your origin, including certificate validity and renewal settings.
  • Geographic routing and redirect-loop prevention. Configure country rules and private origin-request headers while preserving page paths and query strings.
  • Cache configuration and content checks. Set cache behavior, plan how updates reach the CDN, troubleshoot cached errors, and check images, scripts, fonts, internal links, and canonical URLs.
  • Timeweb payment assistance. If you do not have a Russian payment method, the service can include paying for Timeweb CDN on your behalf, with the payment arrangements agreed in advance.
  • Testing and handover. Test access from the target regions, check both fresh and cached pages, confirm that visitors elsewhere retain their normal route, and provide the configuration details and rollback steps.

This service is for static business websites, landing pages, documentation, portfolios, and blogs. Send your website address and a description of the access problems through the Russia Decoding Telegram channel to discuss the setup and scope of work.

If you are setting this up yourself, explore Timeweb CDN using my affiliate link. Start with a few pages, compare access from your target countries, and expand the routing once the setup is working.

Evan Lim

Evan Lim

Founder of Russia Decoding

University lecturer and researcher in Computer Science and Law