0

ワークロードを少し軽減するために、最近サーバーにワニスをインストールしました。ただし、私の Web サイトの 1 つは、HTML5 の 'navigator.geolocation.getCurrentPosition()' 関数を広く使用しており、前述のデータベースが利用できない場合、nginx にインストールされた maxmind データベースにフォールバックします。

nginx/maxmind バージョンが機能しない理由は理解できます。これは、あなたの IP を認識している nginx サーバーに依存しており、varnish が前面にあるため、リクエストが nginx まで届かない可能性があるためです。

しかし、HTML5 のジオロケーション機能が機能しないのはなぜですか? これは純粋にクライアント側であり、Web サーバーの影響を受けないはずだと思いましたか?

4

1 に答える 1

0

Nginx Http GeoIP モジュールをプロキシの背後で動作させるには、プロキシ サーバーの IP アドレスをgeoip_proxy ディレクティブに渡す必要があります。

W3C Geolocation 機能が機能しない理由を推測するのに十分な情報があるかどうかはわかりません。あなたが示唆しているように、サイトがプロキシ サーバーの背後にある場合に機能しない明確な理由はありません。

余談ですが、MaxMind の GeoIP2 JavaScript サービスをチェックしてみてください。これは W3C Geolocation の使用を試み、それが利用できない場合は Web サービスにフォールバックします。MaxMind は、ニーズを満たす無料のオプションを提供します。

于 2013-07-02T01:50:06.643 に答える