Instalace a nastavení serveru adresních bodů

Z Freenetis Wiki
Verze z 31. 1. 2018, 15:11, kterou vytvořil Quimi (diskuse | příspěvky) (Quimi přesunul stránku Instalace a nastavení serveru adresních bodů na Instalace a nastavení serveru adresních bodů bez založení přesměrování)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Přejít na: navigace, hledání


Informace

Pro provoz serveru databáze adres je ideální z důvodu zátěže vyhradit pro něj samostatný/virtuální server s alespoň 512MB RAM a 1GB swapem.

Nastavení serveru

Příprava instalace

Nainstalujte všechny požadované balíky

apt-get install unzip git apache2 php5 php5-mysql mysql-server

Restartujte apache

service apache2 restart

Získání zdrojových kódů

Stáhněte si zdrojové kódy webové aplikace do libovolné složky

git clone https://github.com/freenetis/freenetis-address.git

Příprava databáze

Vytvořte databázi pomocí SQL skriptu

CREATE DATABASE `addresses` DEFAULT CHARACTER SET utf8 COLLATE utf8_czech_ci;

CREATE TABLE IF NOT EXISTS `addresses` (
  `country` int(11) NOT NULL,
  `town_name` varchar(50) COLLATE utf8_czech_ci NOT NULL,
  `town_quarter` varchar(50) COLLATE utf8_czech_ci NOT NULL,
  `district_name` varchar(50) COLLATE utf8_czech_ci NOT NULL,
  `street` varchar(50) COLLATE utf8_czech_ci NOT NULL,
  `number` varchar(15) COLLATE utf8_czech_ci NOT NULL,
  `zip_code` varchar(10) COLLATE utf8_czech_ci NOT NULL,
  UNIQUE KEY `FULLTEXT` (`town_name`,`town_quarter`,`district_name`,`street`,`number`,`zip_code`,`country`),
  KEY `country` (`country`),
  FULLTEXT KEY `town_name` (`town_name`),
  FULLTEXT KEY `town_quarter` (`town_quarter`),
  FULLTEXT KEY `district_name` (`district_name`),
  FULLTEXT KEY `street` (`street`),
  FULLTEXT KEY `number` (`number`),
  FULLTEXT KEY `zip_code` (`zip_code`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci;

CREATE TABLE IF NOT EXISTS `addresses_tmp` (
  `country` int(11) NOT NULL,
  `town_name` varchar(50) COLLATE utf8_czech_ci NOT NULL,
  `town_quarter` varchar(50) COLLATE utf8_czech_ci NOT NULL,
  `district_name` varchar(50) COLLATE utf8_czech_ci NOT NULL,
  `street` varchar(50) COLLATE utf8_czech_ci NOT NULL,
  `number` varchar(15) COLLATE utf8_czech_ci NOT NULL,
  `zip_code` varchar(10) COLLATE utf8_czech_ci NOT NULL,
  UNIQUE KEY `FULLTEXT` (`town_name`,`town_quarter`,`district_name`,`street`,`number`,`zip_code`,`country`),
  KEY `country` (`country`),
  FULLTEXT KEY `town_name` (`town_name`),
  FULLTEXT KEY `town_quarter` (`town_quarter`),
  FULLTEXT KEY `district_name` (`district_name`),
  FULLTEXT KEY `street` (`street`),
  FULLTEXT KEY `number` (`number`),
  FULLTEXT KEY `zip_code` (`zip_code`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci;

CREATE TABLE IF NOT EXISTS `config` (
  `name` varchar(100) COLLATE utf8_czech_ci NOT NULL,
  `value` text COLLATE utf8_czech_ci NOT NULL,
  PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci;

Instalace

Spusťte s právy administrátora instalační skript v složce se zdrojovými kódy

./install.sh

zadejte přihlašovací údaje k databázi. Následně se soubory nakopírují do /var/www/freenetis-addresses a vygeneruje se úloha pro CRON, která bude každý den v 5:00 kontrolovat aktuálnost databáze adres a případně ji aktualizuje na nejnovější verzi

Prvotní stažení databáze

Spusťte importovací skript

./import.sh

Import může v závoslosti na rychlosti disků a počtu adres v databázi trvat i více než 30 minut. Průběh importu se bude zobrazovat v konzoli.


Nastavení FreenetISu

V nastavení FreenetISu v sekci systém vyplňte adresu webové aplikace včetně podsložky, např.

http://sdruzeni.net/freenetis-addresses/

Chybová hlášení import scriptu

Config file not found - Nepodařilo se najít soubor /etc/freenetis-addresses.ini, řešením je znovu spuštění skriptu ./install.sh.

Cannot get latest database date - Nepodařilo se zjistit datum databáze ze serveru cuzk.cz. Buď jsou stránky nedostupné, nebo je změněna struktura stránky tak, že z ní není možné zjistit datum.

Database is up to date - Databáze je aktuální a nebude aktualizována.

Databasse is not up to date and will be update - Databáze není aktuální a bude aktualizována.

Cannot download addresses - Nepodařilo se stáhnout archiv s databází ze serveru cuzk.cz.

Cannot extract addresses - Chyba při rozbalování databáze do dočasné složky.

Cannot prepare addresses - Chyba při odstraňování nepotřebných sloupců, změně kódování nebo přípravě čísla popisného. Chybou může být změna formátu dat v databázi.

Cannot clean temporary table - Nastala chyba při mazání dočasné tabulky.

Cannot import addresses - Nepodařilo se naimportovat databázi adres. Chybou může být změna formátu dat v databázi.

Cannot update database - Nastala chyba při záměně dočasné a produkční tabulky databáze adres.

Aktualizace zdrojových kódů

Po stažení aktualizovaných zdrojových kódů spusťte s právy administrátora instalační skript v složce se zdrojovými kódy

./install.sh

Odinstalace

Spusťte s právy administrátora instalační skript v složce se zdrojovými kódy s parametrem -u

./install.sh -u

Changelog

29.10.2013
Přidán příkaz CREATE DATABASE se správným kódováním
Instalační skript nevyžaduje opětovné zadávání informací o DB při aktualizaci
Do instalačního skriptu přidán parametr -u pro odinstalování
14.10.2013 - vyžaduje FreenetIS_1.1.0~beta2
Změna chování validátoru - pokud není zadána část, validátor se pokusí jako část použít město
18.9.2013 - vyžaduje FreenetIS_1.1.0~beta1
Změny kvůli změně chování napovídače
17.9.2013
Změny kvůli změně chování napovídače
16.9.2013 - vyžaduje FreenetIS_1.1.0~alpha58
Změna řazení města a části
13.9.2013
Oprava chyby v importovacím skriptu běžícím s --cron parametrem
5.9.2013
Vypnutí barevného vypisování v CRONu