سلام
چند تا گزینه پیشنهاد میدم ببینید کدوم به نظرتون بهتره:
گزینه اول: ریدایرکت بر اساس زبان پیش فرض سیستم که براحتی با این کد در فایل htaccess. انجام میشه:
کد:
RewriteEngine On
RewriteCond %{HTTP:Accept-language} nl [NC]
RewriteRule ^$ /nl [L,R=301]
در کد بالا منظور از nl کشور هلند (Netherland) هستش که باید با شناسه دو حرفی کشور مورد نظر تغییر کنه.
با توجه به اینکه ما ایرانی ها هیچ وقت زبان پیش فرض مرورگر وب خودمون رو فارسی نمیکنیم که مثلاً گوگل فارسی برامون باز بشه این ممکن مشکل زا بشه و مثلاً از یه ایرانی زبان en شناسایی بشه.
گزینه دوم: نصب ماژول آپاچی وب سایت IP2Location و براحتی استفاده از کد زیر:
کد:
RewriteEngine On
RewriteCond %{ENV:IP2LOCATION_COUNTRY_SHORT} ^NL$
RewriteRule ^(.*)$ http://www.google.com [L]
آموزش نصب این ماژول در آپاچی: http://www.ip2location.com/developers/apache
همچنین ابزاری آماده برای ایجاد کدی مثل کد بالا بر اساس کشور های مختلف: http://www.ip2location.com/free/visitor-redirection
گزینه سوم: استفاده از زبان برنامه نویسی فعلی سایت برای فیـلتر آی پی بازدیدکننده ها:
همین ابزار http://www.ip2location.com/free/visitor-redirection که در بالا معرفی کردم امکان استفاده در PHP و ASP.Net هم داره و میشه براحتی کتابخانه مورد نیاز این سایت رو دانلود و در کد فراخوانی کنی بعدش با یک شرط بررسی کنی ببینی آیا بازدیدکننده از فلان کشور هست یا نه.
نمونه کدی که این ابزار میده برای فـیلتر همون کشور هلند:
کد:
<?php
require_once 'IP2Location.php';
$loc = new IP2Location('databases/IP-COUNTRY.BIN', IP2Location::FILE_IO);
$record = $loc->lookup($_SERVER['REMOTE_ADDR'], IP2Location::ALL);
if($record == 'NL') {
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.google.com');
exit;
}
?>