educational

Real World Redirection

In a recent board discussion about 2257 compliance issues for overseas producers, I posted a sample of geo-redirect code that has appeared in various forms during discussions here at XBiz. The purpose of the code, implemented as part of a website's .htaccess file, is to redirect incoming website traffic to an alternate destination based upon its country of origin.

The context of 2257 in this discussion is that overseas producers and website owners who do not wish to comply with the enhanced 2257 regulations can easily block their website's availability to the US market by using a few lines of server-side coding. This is one example of the power of geo-redirects – a power which I'd like to take a closer look at today:

Separating Wheat from Chaff
Consider the flow of traffic from the Internet into your website: Depending upon your traffic sources, the percentages of the different types and origins of surfers will vary; such as US surfers coming from search engines or Bulgarians from a TGP. Inevitably, varying amounts of, to be blunt, "undesirable" surfers – and entities such as hitbots and other digital nasties – will hit your homepage.

These "undesirables" include surfers coming from countries where your products or services are illegal and surfers coming from countries with historically excessive levels of fraud, including chargebacks. As such, it behooves the website operator to immediately strip off this traffic arriving at his or her website before it even enters. Why waste bandwidth on traffic that is unprofitable and potentially dangerous?

There's no such thing as useless website traffic, however, so this undesirable traffic is not merely blocked but re-routed at the server level using the aforementioned .htaccess file. The volume of this traffic will vary from website to website, with some operators selling it directly, while others send it to sponsors or trade it for fresh surfers.

It's the latter option that I prefer. If I can trade an "undesirable" for a new surfer, then I'm happy. If I can trade one for several new surfers, then I am even happier. As such, the fate of my "undesirables" is often a "whirlwind" page where they will find top lists and trades behind every click. I'm not trying to make a buck on this visitor, I just want a shot at a better one in exchange for him.

Sometimes, filtering off foreign traffic is desirable, not because the traffic is "undesirable" – but because someone else could make better use of it than you could. For example, I can isolate, say, my Portuguese traffic and look at how well my website converts that traffic. I might also want to send that traffic to a sponsor with a Portuguese site targeting a similar niche, to measure which was the most profitable use of that particular traffic to me.

If both my own website as well as the sponsor's website were profitable to promote, then making both offers to my Portuguese surfers would be in order. I could, for example, use a full-page ad for the Portuguese website with a pass-through link to my own website – the surfer's intended destination – and send my less profitable traffic straight-through to the "whirlwind" page. Let your stats guide your actions.

You can find a list of the country codes that you'll need to build your own geo-redirect list here.

The following is an example of the geo-redirect code which you can copy and paste. It allows for separate targeting of Asian traffic with redirects to Chinese, Japanese and Korean websites, as well as a block of "high fraud" countries which redirect to a "garbage" URL – the perfect place for a "whirlwind" page:

• Asian:
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^CN$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^HK$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^MO$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^MY$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^SG$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^TW$ [NC]
RewriteRule ^(.*)$ https://chinese.url [R,L]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^JP$ [NC]
RewriteRule ^(.*)$ https://japanese.url [R,L]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^KP$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^KR$ [NC]
RewriteRule ^(.*)$ https://korean.url [R,L]

• Illegal and/or High Fraud:
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^AE$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^AF$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^AL$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^AM$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^AZ$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^BG$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^BH$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^BR$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^BY$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^CR$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^CU$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^CZ$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^EE$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^EG$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^GE$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^HR$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^HU$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^ID$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^IL$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^IN$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^IQ$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^IR$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^JO$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^KG$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^KH$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^KW$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^KZ$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^LA$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^LB$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^LT$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^LV$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^LY$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^MD$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^OM$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^PH$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^PK$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^QA$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^RO$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^RU$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^SA$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^SD$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^SI$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^SK$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^SY$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^TH$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^TJ$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^TM$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^TN$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^TR$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^UA$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^UZ$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^VN$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^YE$ [NC,OR]
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^YU$ [NC]
RewriteRule ^(.*)$ https://garbage.url [R,L]

Next week, I'll add some additional coding and put it all together for you, in "Real World .htaccess Files."

Copyright © 2026 Adnet Media. All Rights Reserved. XBIZ is a trademark of Adnet Media.
Reproduction in whole or in part in any form or medium without express written permission is prohibited.

More Articles

opinion

Making the Case for Network Tokens in Recurring Billing

A declined transaction isn’t just a technical error; it’s lost revenue you fought hard to earn. But here’s some good news for adult merchants: The same technology that helps the world’s largest subscription services smoothly process millions of monthly subscriptions is now available to you as well.

Jonathan Corona ·
opinion

Navigating Age Verification Laws Without Disrupting Revenue

With age verification laws now firmly in place across multiple markets, merchants are asking practical questions: How is this affecting traffic? What happens during onboarding? Which approaches are proving workable in real payment flows?

Cathy Beardsley ·
opinion

How Adult Businesses Can Navigate Global Compliance Demands

The internet has made the world feel small. Case in point: Adult websites based in the U.S. are now getting letters from regulators demanding compliance with foreign laws, even if they don’t operate in those countries. Meanwhile, some U.S. website operators dealing with the patchwork of state-level age verification laws have considered incorporating offshore in the hopes of avoiding these new obligations — but even operators with no physical presence in the U.S. have been sued or threatened with claims for not following state AV laws.

Larry Walters ·
opinion

Top Tips for Bulletproof Creator Management Contracts

The creator management business is booming. Every week, it seems, a new agency emerges, promising to turn creators into stars, automate their fan interactions or triple their revenue through “secret” social strategies. The reality? Many of these agencies are operating with contracts that wouldn’t survive a single serious dispute — if they even have contracts at all.

Corey D. Silverstein ·
opinion

Building Sustainable Revenue Without Opt-Out Cross-Sales

Over the past year, we’ve seen growing pushback from acquirers on merchants using opt-out cross-sales — also known as negative option offers. This has been especially noticeable in the U.S. In fact, one of our acquirers now declines new merchants during onboarding if an opt-out flow is detected. Existing merchants submitting new URLs with opt-out cross-sales are being asked to remove them.

Cathy Beardsley ·
trends

How to Handle Payment Disputes Without Sacrificing Trust

You can run the best-managed and most compliant website out there, but that still doesn’t completely shield you from the risks tied to payment disputes. Buyer’s remorse, an unclear billing description or even a simple misunderstanding can lead a customer to dispute a transaction. Accumulate enough disputes, and both your reputation and revenue could be at risk.

Jonathan Corona ·
trends

WIA Profile: Taylor Moore

With a 70-person team and a growing slate of tools for content creators, the Teasy Agency has developed a reputation for putting talent first. That commitment owes a lot to co-founder Taylor Moore’s own experiences as a cam model.

Jackie Backman ·
profile

WIA Profile: Cathy Turns Creator Platform Experience Into a Model-First Playbook

As both a model and industry executive, Cathy lives in two worlds at once. “Since I do both things, I can act as the liaison between the model community and the rest of the SextPanther team,” she tells XBIZ.

Jackie Backman ·
opinion

From Compliance to Confidence: The Future of Safety in Adult Platforms

In numerous countries and U.S. states, laws now require platforms to prevent minors from accessing age-inappropriate material. But the need for safeguarding doesn’t end with age verification. Today’s online landscape also places adult companies at uniquely high risk for inadvertently facilitating exploitation, abuse or reputational harm, or of being accused of doing so.

Andy Lulham ·
opinion

What Adult Businesses Need to Know About Florida's Age Verification Law

The rise and proliferation of age verification laws has changed the landscape for the online adult industry. A recent and compelling example is the state of Florida, where Attorney General James Uthmeier has filed multiple complaints against major platforms as well as affiliates accused of violating the state’s AV law.

Corey D. Silverstein ·
Show More