これは、ユーザーが国、地域または州、地区、都市、緯度と経度、郵便番号、タイムゾーン、インターネット サービス プロバイダー (ISP) または会社名、ドメイン名、ネット速度を検索できるようにする IP2Location Apache モジュールです。 、市外局番、気象観測所コード、気象観測所名、モバイル国コード (MCC)、モバイル ネットワーク コード (MNC) および通信事業者ブランド、標高、使用タイプ、住所タイプ、IAB カテゴリ、ASN、および IP アドレスまたはホスト名によるカテゴリに由来します。ライブラリは、 IP2Location BIN データファイルから地理的位置情報を読み取ります。
IPv4 および IPv6 アドレスをサポートしました。
詳細については、https://www.ip2location.com/developers/apache をご覧ください。
ip2location という名前の新しいフォルダーを作成します。
Debian に開発ライブラリをインストールします。
apt install apache2-dev
IP2Location C ライブラリをここから ip2location フォルダーにダウンロードします。
Cライブラリを解凍します。
unzip master.zip && rm master.zip
作業ディレクトリに入ります。
cd IP2Location-C-Library-master
IP2Location-C-Library をコンパイルしてインストールします。
autoreconf -i -v --force
./configure
make
make install
注: 必要に応じて、 ldconfig
実行して共有ライブラリを更新する必要がある場合があります。
IP2Location Apache モジュールを ip2location フォルダーにダウンロードします。
IP2Location Apache モジュールを解凍する
unzip master.zip && rm master.zip
IP2Location Apache Module ディレクトリに移動します。
cd ip2location-apache-master
IP2Location Apache モジュールをコンパイルします。
apxs2 -i -a -L ../IP2Location-C-Library-master/libIP2Location/ -I ../IP2Location-C-Library-master/libIP2Location/ -l IP2Location -c mod_ip2location.c
apache2ctl -M
<IfModule mod_ip2location.c>
IP2LocationEnable On
IP2LocationDetectProxy <On|Off>
IP2LocationSetmode ALL
IP2LocationDBFile <ip2location_binary_db_file_with_fully_qualified_path>
</IfModule>
ip2location という名前の新しいフォルダーを作成します。
IP2Location C ライブラリをここから ip2location フォルダーにダウンロードします。
7-zip またはその他の圧縮ツールを使用して C ライブラリを解凍します。
作業ディレクトリに入ります。
cd IP2Location-C-Library-master
コンパイルを開始します。
nmake /f Makefile.win
Apache モジュールを ip2location フォルダーにダウンロードして解凍します。
ip2location-apache-master フォルダーに移動します。
Makefile.win を編集して C ライブラリのパスを変更します。
IP2LOCATION_CSRC_PATH = C:/ip2location/IP2Location-C-Library-master/libIP2Location
IP2LOCATION_CLIB_PATH = C:/ip2location/IP2Location-C-Library-master/libIP2Location
APACHE_INSTALL_PATH = "C:/Program Files/Apache Software Foundation/Apachex.x"
コンパイルを開始します。
nmake /f Makefile.win
生成された IP2Location_apache.dll を Apache モジュール ディレクトリにコピーします。
httpd.conf に次の行を追加します。
<IfModule mod_ip2location.c>
IP2LocationEnable <ON|OFF>
IP2LocationDetectProxy <ON|OFF>
IP2LocationSetmode ALL
IP2LocationDBFile <ip2location_binary_db_file_with_fully_qualified_path>
</IfModule>
Apache で IP2Location モジュールをロードするには、httpd.conf に次の行を追加します。
LoadModule IP2Location_module FULL_PATH_TO_IP2LOCATION_MODULE
<IfModule mod_ip2location.c>
IP2LocationEnable On
# ENV will set server variables
# NOTES will set apache notes
# ALL will set both
IP2LocationSetmode ALL
IP2LocationDBFile PATH_TO_IP2LOCATION_BIN_DATABASE
IP2LocationDetectProxy On
</IfModule>
参照:
名前 | 価値 | 説明 |
---|---|---|
IP2LocationEnable | オン|オフ | IP2Location モジュールを有効または無効にします。 |
IP2位置設定モード | 環境|メモ|すべて | 地理位置情報変数を表示する場所を選択します。 ENV = サーバー変数、NOTES = Apache メモ、ALL = 両方 |
IP2LocationDBファイル | パス | IP2Location BIN データベースへのフルパス |
IP2LocationDetectProxy | オン|オフ | Web サイトがリバース プロキシ サーバーの背後でホストされている場合は、これをオンにして正しい IP アドレスを検出します。 |
Apache サーバーを再起動して変更を有効にします
注Apache がモジュール ファイルを見つけられないという起動エラーが発生する場合は、環境パスを次のように設定してください。
$ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/apache2/modules/
$ export LD_LIBRARY_PATH
インターネットブラウザから、mod_ip2location_test.phpをロードします。
以下の行をドメイン構成ファイル (apaches/sites-enabled) または .htaccess に追加します。
RewriteEngine On
RewriteCond %{ENV:IP2LOCATION_COUNTRY_SHORT} ^US$
RewriteRule ^(.*)$ https://www.google.com [L]
これにより、すべての IP アドレスが米国から https://www.google.com にリダイレクトされます。
電子メール: [email protected]。
URL: https://www.ip2location.com