Назад | Перейти на главную страницу

Как установить каталог для конкретной страны в Apache

Итак, мне нужно установить VirtualHost у которых есть один домен для маршрутизации клиентов к разным приложениям в зависимости от их IP-адреса.

Например, мне нужен американский пользователь, который посещает example.com быть поданным из /path/to/usa/application в то время как пользователи из разных стран должны обслуживаться из /new/international/application/path

Вы можете сделать это с помощью mod_geoip и mod_rewrite. Что-то вроде следующего должно помочь:

DocumentRoot /new/international/application/path

GeoIPEnable On
GeoIPDBFile path-to-geoip.dat

RewriteEngine On
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^US$
RewriteRule ^(.*)$ /path/to/usa/application/$1 [L]

Запросы с IP-адреса, который модуль geoip классифицирует как находящийся в США, будут обслуживаться с /path/to/usa/application, тогда как другие запросы будут обслуживаться из корня документа по умолчанию.