Купить SSD Хостинг   

WebHelpCenter.ru Все что может пригодится вебмастеру, администратору сервера, хостинга, программисту и новичку в интернете

Сети
Поиск по сайту
Разделы сайта
Подробнее о...
Календарь
«    Январь 2018    »
ПнВтСрЧтПтСбВс
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
Архив новостей
Полезное
Облако тегов
Популярные новости
Скачать Игры бесплатно
Скачать alawar Игры бесплатно
Друзья
Самое дорогое

Установка GeoIP на Centos (Red Hat) с панелью WHM/CPanel

Установка GeoIP на Centos (Red Hat) с панелью WHM/CPanel


GeoIP – это библиотека для определения страны, города, области, долготы, широты, и другой информация по IP адресу.
Информация берётся из специальной базы, лучшая из которых находиться на сайте MaxMind.

В настоящее время существует множество разных скриптов и плагинов к скриптам, которые в своей работе используют именно это расширение. Однако некоторым из них достаточно работы GeoIP как модуля apache (mod_geoip) а некоторым этого мало и они хотят расширения GeoIP в PHP или Perl.

Следующая инструкция подойдет для установки GeoIP на CentOS, RedHat, Fedora с панелью управления WHM/CPanel

Все действия делаются в командной строке на сервере по SSH

1. Добавляем репозиторий EPHEL: Сайт

CentOS 5

для i386
http://dl.fedoraproject.org/pub/epel/5/i386/
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm


для x86_64 (64-битной системе)
http://dl.fedoraproject.org/pub/epel/5/x86_64/
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/x86_64//epel-release-5-4.noarch.rpm


CentOS 6

для i386
http://download.fedoraproject.org/pub/epel/6/i386/
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm


для x86_64 (64-битной системе)
http://download.fedoraproject.org/pub/epel/6/x86_64/
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm


2. Устанавливаем GeoIP при помощи yum:

yum install geoip geoip-devel


3. Скачиваем базы IP адресов, создаем директорию для баз и копируем в нужное место:

mkdir /usr/local/share/GeoIP
cd /usr/local/share/GeoIP

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
gzip -d GeoIP.dat.gz

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
gzip -d GeoLiteCity.dat.gz

wget http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz
gzip -d GeoIPv6.dat.gz


Последние базы, и правильность названия файлов, можно посмотреть на сайте

http://geolite.maxmind.com/download/geoip/database/
http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/

4. Устанавливаем модуль mod_GeoIP для Apache на сервер или VPS

wget http://docs.cpanel.net/twiki/pub/EasyApache3/CustomMods/custom_opt_mod-mod_geoip.tar.gz
tar -C /var/cpanel/easy/apache/custom_opt_mods -xzf custom_opt_mod-mod_geoip.tar.gz


Пересобираем Apache и выбираем модуль GeoIP

/scripts/easyapache


Установка GeoIP на Centos (Red Hat) с панелью WHM/CPanel


Это можно сделать и через WHM, в разделе Software > EasyApache (Apache Update)

Установка займет от 20-40 минут, зависит от загруженности и производительности сервера/vps

5. Подгружаем модуль mod_GeoIP в Apache

vi /usr/local/apache/conf/includes/pre_virtualhost_global.conf

Вписываем:

GeoIPEnable On
GeoIPDBFile /usr/local/share/GeoIP/GeoIP.dat
GeoIPDBFile /usr/local/share/GeoIP/GeoLiteCity.dat
GeoIPDBFile /usr/local/share/GeoIP/GeoIPv6.dat

Перезапускаем Apache:

service httpd restart


Это можно сделать и в WHM в разделе Service Configuration > Include Editor > Pre VirtualHost Include (All Versions)

6. Устанавливаем расширение GeoIP как модуль php

Если же GeoIP нужен как модуль php, то проделываем следующее:

wget http://pecl.php.net/get/geoip-1.0.8.tgz
tar xvfz geoip-1.0.8.tgz
cd geoip-1.0.8
phpize
./configure
make
make install


Последнюю версию можно скачать с сайта PECL : http://pecl.php.net/package/geoip

Открываем файл php.ini

vi /usr/local/lib/php.ini


Добавить туда строку:
extension=geoip.so

добавляем где то к концу файла, где подгружаются различные расширение

Перезапускаем Apache:
service httpd restart


Проверить то, что модуль установлен и корректно работает можно командой php -m или php -m | grep geoip

Так же можете создать файл с выводом phpinfo на сервере, и отобразить это через браузер.

7. Устанавливаем GeoIP как модуль perl (если нужен)

Скачиваем последнюю версию с сайта PEAR http://pear.php.net/package/Net_GeoIP/download/

wget http://download.pear.php.net/package/Net_GeoIP-1.0.0RC3.tgz


Устанавливаем:
pear install Net_GeoIP-1.0.0RC3


Путь к бинарному файлу:
/usr/local/bin/geoiplookup
/usr/local/bin/geoiplookup6

На этом установка закончена!

P.S. , может кому понадобится, так тоже работает

Есть вариант не пересобирать Apache через EasyApache а сделать так:

Скачиваем последнюю версию модуля с сайта maxmind и устанавливаем, в место 4-го пункта описанного выше.

wget -c  http://geolite.maxmind.com/download/geoip/api/mod_geoip2/mod_geoip2_1.2.5.tar.gz
tar -xzf  mod_geoip2_1.2.5.tar.gz
cd mod_geoip2_1.2.5/
/usr/local/apache/bin/apxs -lGeoIP -cia mod_geoip.c


Откроя файл конфигурации апача:
vi /usr/local/apache/conf/httpd.conf

Вы должны обнаружить :
LoadModule geoip_module modules/mod_geoip.so

Значить все в порядке.,

Остальные пункты делаем как все написано.
Опубликовал admin, 7-03-2011, 05:40 | Комментировать (0) | Печать
 (голосов: 0)