Mapserver + Mapproxy и передача Querystring

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
dubanoze
Новоприбывший
Сообщения: 10
Зарегистрирован: 23 янв 2013, 13:46
Репутация: 0

Mapserver + Mapproxy и передача Querystring

Сообщение dubanoze »

Коллеги,
есть Mapproxy, для которого источником данных является Mapserver.
В querystring с Openlayers я передаю параметры для динамического SQL в Mapserver.
Так вот когда использовать в качестве прокси Mapproxy, Querystring теряется.
Может кто знает решение ?
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Mapserver + Mapproxy и передача Querystring

Сообщение Denis Rykov »

Если вы передаёте динамические параметры в MapServer, то в чём тогда заключается роль MapProxy в вашем случае? MapProxy - это же кэширующий прокси-сервер, а если у вас подразумеваются постоянно изменяющиеся запросы, то что тогда кэшировать?
Spatial is now, more than ever, just another column- The Geometry Column.
dubanoze
Новоприбывший
Сообщения: 10
Зарегистрирован: 23 янв 2013, 13:46
Репутация: 0

Re: Mapserver + Mapproxy и передача Querystring

Сообщение dubanoze »

Идеально бы хотелось учитывать при кэшировании параметры передаваемые в запросе.
Т.е. при изменении запроса кэш обновлять.
А пока в query string параметры запроса не изменились отдавать из кэша.
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Mapserver + Mapproxy и передача Querystring

Сообщение Denis Rykov »

Чтобы MapProxy передавал кастомные параметры в источник, есть опция forward-req-params, то есть в вашем случае конфиг будет выглядеть так (если источник - WMS):

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

sources:
  wms_src:
    type: wms
    forward_req_params: ['sql']
    req:
      url: http://hostname
      layers: layername
      transparent: True
Если используется прямой вызов MapServer (то есть type: mapserver), то конфиг будет выглядеть чуть по-другому, но сути это не меняет. Но как будет в этом случае выглядеть процесс кэширования я не представляю. Попробуйте - отпишитесь. Я правильно понимаю, в OpenLayers слой подключается как WMS?
Spatial is now, more than ever, just another column- The Geometry Column.
dubanoze
Новоприбывший
Сообщения: 10
Зарегистрирован: 23 янв 2013, 13:46
Репутация: 0

Re: Mapserver + Mapproxy и передача Querystring

Сообщение dubanoze »

Denis Rykov писал(а):Чтобы MapProxy передавал кастомные параметры в источник, есть опция forward-req-params, то есть в вашем случае конфиг будет выглядеть так (если источник - WMS):

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

sources:
  wms_src:
    type: wms
    forward_req_params: ['sql']
    req:
      url: http://hostname
      layers: layername
      transparent: True
Если используется прямой вызов MapServer (то есть type: mapserver), то конфиг будет выглядеть чуть по-другому, но сути это не меняет. Но как будет в этом случае выглядеть процесс кэширования я не представляю. Попробуйте - отпишитесь. Я правильно понимаю, в OpenLayers слой подключается как WMS?
Да, слой подключен как WMS.
dubanoze
Новоприбывший
Сообщения: 10
Зарегистрирован: 23 янв 2013, 13:46
Репутация: 0

Re: Mapserver + Mapproxy и передача Querystring

Сообщение dubanoze »

Нашел в мануале:

New in version 1.5.0.
A list with request parameters that will be forwarded to the source server (if available in the original request). A typical use case of this feature would be to forward the TIME parameter when working with a WMS-T server.
This feature only works with uncached sources.
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Mapserver + Mapproxy и передача Querystring

Сообщение Denis Rykov »

У вас же как раз uncached sources.
Spatial is now, more than ever, just another column- The Geometry Column.
dubanoze
Новоприбывший
Сообщения: 10
Зарегистрирован: 23 янв 2013, 13:46
Репутация: 0

Re: Mapserver + Mapproxy и передача Querystring

Сообщение dubanoze »

Я думал что можно будет кэшировать тайлы в рамках одного запроса.
Т.е. если параметры в query string не изменились отдавать из кэша.
Придется кэш самому писать.
Ответить

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

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

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