違い

2016-07-20 4 views
1

apache moduleの場合は、インストールされているApache2のモジュールとしてVS PHPモジュールとしてのGeoIPをインストールする間、あなたが持つ国コードを取得:PHP module/library違い

$_SERVER['GEOIP_COUNTRY_CODE'] 

を、あなたが使用します。

geoip_country_code_by_name($_SERVER['REMOTE_ADDR']) 

は何ですかこれらの2つのソリューションの違い(パフォーマンスなど...)? どちらが最適ですか?そのために必要なのは?

私はapacheモジュールがすべての要求に対してメモリ内の拡張をロードしたと思います。これはパフォーマンスにとって悪い可能性があります。 (または、GeoIPEnable Off/Onでルールを設定する必要がありますが、これは必ずしも容易ではありません...) 一部のページだけにジオープが必要な場合は、パフォーマンスがPHPモジュールを使用する方が良いでしょうか?

答えて

1

パフォーマンスはほぼ同等です。私たちはまた興味があったので、Digital Ocean VMと地元の荒れ狂いの両方でいくつかのテストを行いました。結果は同じでした:Apache Extension、PHP Extension、またはPHP Libraryを使用すると、すばらしい結果が得られました。 GeoIPをまったくやっていないのであれば、本当のヒットはありません。

.htaccessを使用して、ディレクトリまたはファイル単位でApache内のGeoIPを無効にすることができます。そのため、一部の地域では無効にすることもできます。

私たちのテストについては、再生方法の詳細をブログに書いています:GeoIP Performance Examined