Tilecache+Mapnik need help!!

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
Silentium
Активный участник
Сообщения: 114
Зарегистрирован: 20 апр 2010, 17:33
Репутация: 0

Tilecache+Mapnik need help!!

Сообщение Silentium »

Привет всем!
Может кто подскажет? Пытался решить такую задачу, подключить такую цепочку:
1) Беру данные OSM из PostgreSQL/PostGIS посредством обращения mapnik к бд. (настраивал mapnik по примеру http://wiki.openstreetmap.org/wiki/RU:Mapnik_Example ). Через python-скрипт картинку получаю,
2) Далее настроил tilecache. Слой basic как в примере показывается. Дальше пытаюсь описать свой слой в .cfg

Код: Выделить всё

[test1]
type=Mapnik
mapfile=c:\mapnik-0.7.1\demo\python\heath.xml
spherical_mercator=true
srs=EPSG:900913
projection= +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs +over
#bbox=-12689315,5918711,-12687452,5920589
bbox=-20037508.34,-20037508.34,20037508.3384,20037508.3384
metaTile=true
metaBuffer=256 
Но вместо картинки вижу пустой экран. Ошибки в Апаче примерно следующие:

[Tue Jun 21 17:49:47 2011] [error] [client xxx.xxx.xxx.xxx] Cache hit: -20037508.34,-20037508.34,20037508.3384,20037508.3384, Tile: x: 0, y: 0, z: 0, time: 0.0, debug: True\r
[Tue Jun 21 17:51:11 2011] [error] [client xxx.xxx.xxx.xxx] Cache hit: -20037508.34,-20037508.34,20037508.3384,20037508.3384, Tile: x: 0, y: 0, z: 0, time: 0.0, debug: True\r
[Tue Jun 21 17:59:03 2011] [error] [client xxx.xxx.xxx.xxx] Cache miss: -20037508.34,-20037508.34,20037508.3384,20037508.3384, Tile: x: 0, y: 0, z: 0, time: 0.68700003624\r

Кто подскажет что не так делаю?
Аватара пользователя
wmk
Активный участник
Сообщения: 102
Зарегистрирован: 11 янв 2009, 17:38
Репутация: 0
Откуда: Казань
Контактная информация:

Re: Tilecache+Mapnik need help!!

Сообщение wmk »

Возможно стоит использовать вариант на пхп и не парится с настройками всевозможных прог

Сервер на ПХП

Код: Выделить всё


<?
header("Cache-Control: public");
header("Expires: " . date("r", time() + 3600));

if( file_exists('./WMS-C-Cache/'.($_GET["BBOX"]).'.png') )
{
header("Content-type: image/png");
readfile('./WMS-C-Cache/'.($_GET["BBOX"]).'.png');
}
else
{
$code = file_get_contents('http://w.loc/mapserv.exe?MAP=/map.map&'.$_SERVER["QUERY_STRING"]);
$file = fopen ('./WMS-C-Cache/'.($_GET["BBOX"]).'.png',"w+");
fputs ( $file, $code);
fclose ($file);
header("Content-type: image/png");
readfile('./WMS-C-Cache/'.($_GET["BBOX"]).'.png');
}

?>

Этот сервачек кэширует все входящие запросы, и создает под каждый тайл, если есть готовый то выводит его. Скорость работы в разы выше чем у тайлкэш и подобных

В настройках клиента прописать

Код: Выделить всё


var WMS_C_Server = new OpenLayers.Layer.WMS("WMK WMS-C Server 0.1",
['http://192.168.0.15:90/WMS-C.php'],
{layers: ['water','forests','islands'], format: "AGG_PNG"});

Я этот сервачек написал когда устал мучится с тайлкэш и камап ... и чем то еще :) попробуй может подойдет
OurGuns.ru - пневматическое оружие России и мира
Пневматическое оружие , Страйкбольное оружие , Пейнтбольное оружие
Silentium
Активный участник
Сообщения: 114
Зарегистрирован: 20 апр 2010, 17:33
Репутация: 0

Re: Tilecache+Mapnik need help!!

Сообщение Silentium »

Скрипт на рнр прекрасно работает)) Спасибо!!!
Жаль правда что он картинки всем скопом кидает а не сортирует по папкам как другие тайловые кеши
Аватара пользователя
dobeer
Активный участник
Сообщения: 199
Зарегистрирован: 25 дек 2009, 21:54
Репутация: 1
Откуда: Чита
Контактная информация:

Re: Tilecache+Mapnik need help!!

Сообщение dobeer »

Если немного подшаманить в коде, то можно сделать создание папки с текущей датой и кидать уже в нее './WMS-C-Cache/02092011' например. Сделать проверку существует ли папка с именем текущей даты, если нет то создать, если есть, то в нее сохранять, а поиск тайла осуществлять по всем папкам (не знаю как быстро он будет правда перебирать кучу папок...), надо поюзать на днях метод)))) Спасибо wmk за "сервачок".
Silentium
Активный участник
Сообщения: 114
Зарегистрирован: 20 апр 2010, 17:33
Репутация: 0

Re: Tilecache+Mapnik need help!!

Сообщение Silentium »

Не исключено, что можно добавить seeding и проверку на старые тайлы и их удаление).
Тоже надо посмотреть, почитать по рнр
Ответить

Вернуться в «Веб-картография»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя