Instalace a nastavení serveru adresních bodů
Obsah
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ě podlož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