« Back to Index

Example NGINX global “rollout” strategy

View original Gist on GitHub

Example NGINX global “rollout” strategy.md

Note: X-User-Country-Code & X-Device-Type provided by our CDN (YMMV)
set req.http.X-User-Country-Code = geoip.country_code;
set req.http.X-User-Continent-Code = geoip.continent_code;

Send Australia/New Zealand homepage mobile traffic

30_home_mobile:
  variable: '$http_x_user_country_code:$http_x_device_type'
  match: '~*(?:NZ|AU):mobile'

Send UK homepage mobile traffic

30_home_mobile:
  variable: '$http_x_user_country_code:$http_x_device_type'
  match: '~*(?:NZ|AU|GB):mobile'

Send Europe/Oceania homepage mobile traffic

30_home_mobile:
  variable: '$http_x_user_continent_code:$http_x_device_type'
  match: '~*(?:OC|EU):mobile'

Note: we’re using X-User-Continent-Code this time, not X-User-Country-Code

Send all (except North America) homepage mobile traffic

30_home_mobile:
  variable: '$http_x_user_continent_code:$http_x_device_type'
  match: '~*(?:AF|AS|EU|OC|SA):mobile'

Note: we’re using X-User-Continent-Code this time, not X-User-Country-Code

Send ALL homepage mobile traffic pointing

30_home_mobile:
  variable: '$http_x_device_type'
  match: 'mobile'