Перенаправление с помощью mod_rewrite и mod_geoip, только если пользователь запрашивает корень домена и находится в определенной стране. - PullRequest
1 голос
/ 11 марта 2010

Мне нужно правило и условие для обработки этого сценария:

Пользователь из США посещает www.domain.com, domain.com, www.domain.com/ или domain.com/, его следует перенаправить на www.domain.com/usvisitor/

Однако, если пользователь из США посещает www.domain.com/anydirectory, он пропустит их без перенаправления.

например.

RewriteEngine On  
RewriteBase /

GeoIPEnable On  
GeoIPDBFile /var/share/GeoIP/GeoIP.dat  

RewriteEngine on  
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^US$  
RewriteCond %{HTTP_HOST} ^domain.com$ [L]  
RewriteRule ^/$ http://www.domain.com/usvisitor$1 [L]  

Я знаю, что RewriteConditons и правила неверны - просто не могу разобраться с этим!

1 Ответ

2 голосов
/ 12 марта 2010

Только для записи, это решено:

RewriteEngine On  

GeoIPEnable On  
GeoIPDBFile /var/share/GeoIP/GeoIP.dat  
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^US$  
RewriteRule ^$ http://www.domain.com/usvisitor/$1 [L,NC,QSA]

Просто на самом деле - дох!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...