web-dev-qa-db-ja.com

2つのホスティングサーバー間でトラフィックをルーティングするにはどうすればよいですか?

ウェブサイトを持っています。 2ユーザーのターゲットグループ向けに設計されています:東ヨーロッパから1つ米国から2番目。また、2つのホスティングアカウントがあります。1つはアメリカに、もう1つはヨーロッパにあります。

アメリカからの訪問者がアメリカのホスティングサーバーを指すように、ヨーロッパからの訪問者はヨーロッパのサーバーに接続するようにトラフィックをルーティングしたいと思います。 DNSサーバー(または何でも)を構成することはできますか?

3
Alex

これを実現する最も安価な方法は、それぞれにサブドメインを設定することです。

eu.yoursite.comおよびus.yoursite.com

次に、彼らが最初にyoursite.comに到着したときに、ツールを使用して、IPに基づいてジオロケーションを決定できます。たとえば、 http://www.ip2location.com/ または http:// dev.maxmind.com/geoip/geolite

Cookieを設定して、それらを最も適切なサブドメインに誘導します。

また、html5には位置情報APIがあります。

2
mkaatman

Apache2で国の場所に基づいて訪問者をリダイレクトする

これは、Mod_geoip2 Apacheモジュールをインストールすることにより、Apache2で簡単に実行できます。基本的には、さまざまなAPIベースのGEOデータベースプロバイダーに接続し、訪問者の場所を検出します。 .htaccessファイルの簡単な例は次のようになります。

GeoIPEnable On
GeoIPDBFile /path/to/GeoIP.dat

# Redirect EU
RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^EU$
RewriteRule ^(.*)$ http://www.EU-Site.com$1 [R,L]

# Redirect Asia, North America and South America
RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(NA|SA|AP)$
RewriteRule ^(.*)$ http://www.US-Site.com$1 [R,L]

ご覧のとおり、これは非常に簡単な作業ですが、最新のデータベースに料金を支払う必要があり、通常はXリクエストごとに請求されます。モジュールについては、ここで見つけることができます: mod_geoip2

1
Simon Hayter