<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>по стопам webkill&#039;а &#187; geo</title>
	<atom:link href="http://blog.lukmus.ru/tag/geo/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.lukmus.ru</link>
	<description>это наш химический дом для печальных жителей Земли</description>
	<lastBuildDate>Sat, 21 Oct 2023 19:10:13 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
		<item>
		<title>определение местоположения пользователя через GeoIP на RoR 3</title>
		<link>http://blog.lukmus.ru/2012/04/13/opredelenie-mestopolozheniya-polzova/</link>
		<comments>http://blog.lukmus.ru/2012/04/13/opredelenie-mestopolozheniya-polzova/#comments</comments>
		<pubDate>Fri, 13 Apr 2012 01:14:04 +0000</pubDate>
		<dc:creator>lukmus</dc:creator>
				<category><![CDATA[ruby & ruby on rails]]></category>
		<category><![CDATA[geo]]></category>
		<category><![CDATA[geoip]]></category>
		<category><![CDATA[ROR 3]]></category>

		<guid isPermaLink="false">http://blog.lukmus.ru/?p=1286</guid>
		<description><![CDATA[GeoIP позволяет определить по IP его страну и иногда даже город. Вообщем, это полезная штука, которая часто нужна сайту, особенно если он мультиязычный (или мультиязыковой). установка Как обычно, в Gemfile надо добавить gem 'geoip' после чего забандлить: bundle install БД IP Теперь надо скачать базы стран и городов, если надо, еще можно скачать базу ASNum [...]]]></description>
			<content:encoded><![CDATA[<p>GeoIP позволяет определить по IP его страну и иногда даже город. Вообщем, это полезная штука, которая часто нужна сайту, особенно если он мультиязычный (или мультиязыковой).<br />
<img class="aligncenter size-full wp-image-1287" title="natoWarsaw" src="http://blog.lukmus.ru/wp-content/uploads/2012/04/natoWarsaw.png" alt="" width="517" height="200" /><span id="more-1286"></span></p>
<h3>установка</h3>
<p>Как обычно, в <code>Gemfile</code> надо добавить</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="" style="font-family:monospace;">gem 'geoip'</pre></td></tr></table></div>

<p>после чего забандлить:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="" style="font-family:monospace;">bundle install</pre></td></tr></table></div>

<h3>БД IP</h3>
<p>Теперь надо скачать базы <a href="geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz" target="_blank" rel='nofollow'>стран</a> и <a href="http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz" target="_blank" rel='nofollow'>городов</a>, если надо, еще можно <a href="http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz" target="_blank" rel='nofollow'>скачать базу ASNum</a> (что это такое я не знаю). Распакованные базы надо кинуть, например, в <code>lib</code>.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="" style="font-family:monospace;">$ cd lib
$ wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
$ wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
$ wget http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz
$ gunzip *.gz
$ ls
assets  GeoIPASNum.dat  GeoIP.dat  GeoLiteCity.dat  tasks</pre></td></tr></table></div>

<h3>эксплуатация</h3>
<p>Глядя из консоли Rails, можно привести такой пример использования:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="" style="font-family:monospace;">&gt; geoip=GeoIP.new<span class="br0">&#40;</span>Rails.root.join<span class="br0">&#40;</span>'lib/GeoLiteCity.dat'<span class="br0">&#41;</span><span class="br0">&#41;</span>
&gt; location=geoip.city<span class="br0">&#40;</span>'google.com'<span class="br0">&#41;</span>
 =&gt; #&lt;struct GeoIP::City request=&quot;google.com&quot;,
ip=&quot;173.194.32.196&quot;, country_code2=&quot;US&quot;,
country_code3=&quot;USA&quot;, country_name=&quot;United States&quot;,
continent_code=&quot;NA&quot;, region_name=&quot;CA&quot;,
city_name=&quot;Mountain View&quot;, postal_code=&quot;<span style="">94043</span>&quot;,
latitude=<span style="">37.41919999999999</span>, longitude=-<span style="">122.0574</span>,
dma_code=<span style="">807</span>, area_code=<span style="">650</span>,
timezone=&quot;America/Los_Angeles&quot;&gt;
&gt; location.city_name
 =&gt; &quot;Mountain View&quot;</pre></td></tr></table></div>

<h3>ссылки</h3>
<p>rubydoc: <a href="http://rubydoc.info/gems/geoip/1.0.0/frames" target="_blank" rel='nofollow'>http://rubydoc.info/gems/geoip/1.0.0/frames</a><br />
github: <a href="https://github.com/cjheath/geoip" target="_blank" rel='nofollow'>https://github.com/cjheath/geoip</a><br />
информация о базах: <a href="http://www.maxmind.com/" target="_blank" rel='nofollow'>http://www.maxmind.com/</a><br />
<meta property="og:image" content="hhttp://blog.lukmus.ru/wp-content/uploads/2012/04/natoWarsaw.png" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lukmus.ru/2012/04/13/opredelenie-mestopolozheniya-polzova/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
