Я использую модуль Apache GeoIP и базу данных MaxMind, чтобы определить страну посетителя на основе его IP-адреса и перенаправить его в подпапку страны, как показано ниже:
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^US$
RewriteRule ^(.*)$ https://example.com/us$1 [L]
Я хотел бы перенаправить в подпапку / us все страны, кроме Китая и России. Список кодов стран указан Вот, но я предпочитаю применять подстановочный знак к условию перезаписи, а не перечислять все страны в моем .htaccess
файл.
Можно ли сделать что-то вроде RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^*$
? Или мне нужно расширить условие перезаписи на все страны, например RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(US|CA|ZA|NG|GH|)$
?
Вы можете просто использовать отрицание !
перенаправить что угодно, кроме Китая CN
и Россия RU
.
RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CN|RU)$
RewriteRule ^(.*)$ https://example.com/us/$1 [L]