●アクセス元の国名を判定
はてなを見ていたら、一年位前の質問で、
自分のホームページをある一定の国からのアクセスを出来なくすることは可能ですか?もし出来るならやり方を教えて下さい
という質問がありました。
質問者の意図としては、おそらくプログラミングでなんとかしたい、ということではない(と思う)のと、ネタとしてちょうどいい感じなので、ここでは、WebAPIを使った判定方法について記しておきます。
自分のホームページをある一定の国からのアクセスを出来なくすることは可能ですか?もし出来るならやり方を教えて下さい
という質問がありました。
質問者の意図としては、おそらくプログラミングでなんとかしたい、ということではない(と思う)のと、ネタとしてちょうどいい感じなので、ここでは、WebAPIを使った判定方法について記しておきます。
--
必要なWebAPIは、
Using the IP Addresses database - IP Address Lookup
RESTで使えるので、簡単です。
XMLデータを取得したい場合
http://api.hostip.info/?ip=IPアドレス
テキストデータを取得したい場合
http://api.hostip.info/get_html.php?ip=IPアドレス&position=true
&position=trueパラメータを付けておくと、緯度経度まで返してくれます。
(但し、対応している国は限定されています)
また、XMLデータで取得する場合は、特に指定しなくても緯度経度情報は勝手についてきますので、通常はXMLで取得した方がいいのかな。
なお、IPアドレスを取得するには、
getenv('REMOTE_ADDR');
でOKです。
ここをクリックすると「IPアドレス」にマッチするWebAPIを確認できます
ここをクリックすると「緯度経度」にマッチするWebAPIを確認できます
この組み合わせだけでも、いろんなマッシュアップが考えられますね。
--
必要なWebAPIは、
Using the IP Addresses database - IP Address Lookup
RESTで使えるので、簡単です。
XMLデータを取得したい場合
http://api.hostip.info/?ip=IPアドレス
テキストデータを取得したい場合
http://api.hostip.info/get_html.php?ip=IPアドレス&position=true
&position=trueパラメータを付けておくと、緯度経度まで返してくれます。
(但し、対応している国は限定されています)
また、XMLデータで取得する場合は、特に指定しなくても緯度経度情報は勝手についてきますので、通常はXMLで取得した方がいいのかな。
なお、IPアドレスを取得するには、
getenv('REMOTE_ADDR');
でOKです。
ここをクリックすると「IPアドレス」にマッチするWebAPIを確認できます
ここをクリックすると「緯度経度」にマッチするWebAPIを確認できます
この組み合わせだけでも、いろんなマッシュアップが考えられますね。
--
Comments
コメント入力は停止しています
海外からと思われるコメントスパムが横行しているため、全記事のコメント入力を停止しています。メッセージのある方は、ホームページの一番下に連絡欄がありますので、そちらからお願いします。