På alle våre hostingservere har vi installert en GeoIP-modul som kan brukes via PHP- og .htaccess-filer på hostingkontoene. Ved hjelp av dette kan du kontrollere atferd på nettsider basert på for eksempel den geografiske plasseringen til en nettsidebesøkende.
Via PHP
Det finnes en rekke ulike GeoIP-relaterte servervariabler som kan brukes til å kontrollere hvilket innhold som skal vises til spesifikke besøkende basert på ulike faktorer. Faktorene kan være IP-adresse, land, organisasjon osv. Tabellen nedenfor viser noen eksempler på variablene du kan bruke.
| Variabel | Verdi |
|---|---|
| $_SERVER[‘GEOIP_ADDR’] | 46.16.232.138 |
| $_SERVER[‘GEOIP_COUNTRY_CODE’] | SE |
| $_SERVER[‘GEOIP_CONTINENT_CODE’] | EU |
| $_SERVER[‘GEOIP_ORGANIZATION’] | ODERLAND Webhostel AB |
| $_SERVER[‘GEOIP_ISP’] | 44136 |
Hvordan du bruker disse i koden din er opp til deg og dekkes ikke av instruksjonene i denne veiledningen.
Via .htaccess
Via .htaccess-filen for nettstedet ditt kan du kontrollere nettstedets oppførsel basert på ulike GeoIP-funksjoner, her er noen eksempler:
Blokker tilgang til filer basert på land
Hvis du vil begrense slik at bare besøkende fra visse land kan få tilgang til wp-admin for WordPress-installasjonen din, kan det gjøres med kode som dette:
GeoIPEnable On RewriteEngine On RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(SE)$ RewriteRule (wp-login|xmlrpc).php$ - [F,L]
Eksemplet ovenfor betyr at besøkende som kommer inn via internett i andre land enn Sverige blir blokkert.
Omdiriger besøkende basert på landet de besøker siden fra
Hvis du har en rekke forskjellige sider beregnet på besøkende fra bestemte land, kan du la GeoIP-funksjonen på serveren ordne omdirigering til riktig side. Du kan bruke kode som dette for å håndtere det:
GeoIPEnable On
# Omdiriger besøkende fra et land til et bestemt nettsted
RewriteEngine On
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^DK$
RewriteRule ^(.*)$ http://www.example.dk$1 [R,L]
# Omdiriger besøkende fra noen få forskjellige land til et bestemt nettsted
RewriteEngine On
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(US|CA)$
RewriteRule ^(.*)$ http://www.example.com$1 [R,L]