Кто нибудь запустил QgisMapServer?

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Ответить
yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Репутация: 55
Откуда: Королев

Кто нибудь запустил QgisMapServer?

Сообщение yellow-sky » 08 сен 2010, 11:55

Хотелось бы узнать, кто нибудь смог заставить работать этого зверя? И если да, то на какой платформе и с какими настройками fcgi?

Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

Re: Кто нибудь запустил QgisMapServer?

Сообщение Mavka » 17 сен 2010, 13:52

лангольеры под окном жрали время ом-ном-ном

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Репутация: 55
Откуда: Королев

Re: Кто нибудь запустил QgisMapServer?

Сообщение yellow-sky » 17 сен 2010, 21:59

Да, именно на этот пост я и ориентировался по началу. Но у меня были проблемы при работе сервиса - сервис стартовал, но при запросах падал c segfault. Проблему уже решил.
Кстати по дороги обнаружил мемлик на getFeatureInfo - ticket 2990. Спасибо Марко, оперативно подправил.

Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

Re: Кто нибудь запустил QgisMapServer?

Сообщение Mavka » 06 окт 2010, 16:56

Quantum mapserver из OSGEo4W (build 14343)
В интернете есть 2 статьи по настройке ([1], [2]), но они сильно устарели и рассчитаны для Linux.
Эта инструкция, наверняка, тоже быстро потеряет актуальность.

В системную переменную PATH нужно добавить путь "c:\OSGeo4W/bin".
И перезагрузить компьютер (иначе изменения не проявятся).

Настраиваем Apache - прописываем в httpd.conf

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

ScriptAlias /qgis/ "c:\OSGeo4W/apps/qgis-dev/bin/"
<Directory "c:\OSGeo4W/apps/qgis-dev/bin/">
    AllowOverride None
    Options +ExecCGI
    Order allow,deny
    Allow from all
    SetEnv QGIS_PREFIX_PATH "C:\OSGeo4W\apps\qgis-dev"    # bug-184
</Directory> 
Переходим к настройке сервера. Она заключается в изменении файла 'admin.sld':
C:\OSGeo4W\apps\qgis-dev\bin\admin.sld
Обратите внимание - при обновлении пакета qgis это файл будет перезаписан, поэтому храните копию в надежном месте.

По образцу меняете конфигурацию до нужного вам вида. Значение HostedVDS приведено с примерами в [1]. А если приглядеться, то содержимое файла полностью повторяет спецификацию OGC SLD 1.1.0 в части касающейся UserLayer (см. п. 11.3 "User-defined layers"). Добавлены специальные элементы (HostedVDS, properties и др.), которые пока что не имеют выделенного namespace, надеюсь, в будущем появится корректная схема для проверки формата.

Все. Проверяйте работу: http://localhost/qgis/qgis_mapserv.fcgi ... SION=1.3.0
  1. Configuration of the QGIS mapserver
  2. QGIS Mapserver – A WMS Server for the masses
Последний раз редактировалось Mavka 07 окт 2010, 09:09, всего редактировалось 1 раз.
лангольеры под окном жрали время ом-ном-ном

Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

Re: Кто нибудь запустил QgisMapServer?

Сообщение Mavka » 06 окт 2010, 17:01

Мелкий баг. В build 14343 показывает Exception с обрезанной конечной скобкой:

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

<ServiceExceptionReport version="1.3.0" xmlns="http://www.opengis.net/ogc" >
 <ServiceException code="ServiceNotSpecified" >Service not specified. The SERVICE parameter is mandatory</ServiceException>
</ServiceExceptionReport
Мистика, прямо. Запросы из браузера на GetCapabilities (см. ранее) обрываются на

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

    <Exception>
        <Format>text/xml</Format>
    </Exception>
    <Layer queryable="1"> 
Дальше должно идти имя слоя. А если запрос делать через WMS Inspector (addon к Firefox) то все проходит успешно:

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

    <Exception>
        <Format>text/xml</Format>
    </Exception>
    <Layer queryable="1">
        <Name>my_layer_name</Name>
    </Layer>
</Capability>
</WMS_Capabilities> 
Почему обрывается передача хвоста? В логах Apache запросы совпадают буква в букву. Соответственно и Quantum GIS не может подключиться к сервису.
лангольеры под окном жрали время ом-ном-ном

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Репутация: 55
Откуда: Королев

Re: Кто нибудь запустил QgisMapServer?

Сообщение yellow-sky » 06 окт 2010, 21:31

Под линксом, с файлом проекта все нормально работает. Жаль не так быстро как мапник )

Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

Re: Кто нибудь запустил QgisMapServer?

Сообщение Mavka » 07 окт 2010, 11:27

Хвосты исправили, уже не режет.
P.S. Дефолтовый admin.sld - 666 байт.
лангольеры под окном жрали время ом-ном-ном

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Кто нибудь запустил QgisMapServer?

Сообщение Voltron » 21 июл 2011, 09:41

Появилось описание установки QGIS Mapserver под Windows с использованием компонент OSGeo4W.

chimich
Новоприбывший
Сообщения: 8
Зарегистрирован: 13 июл 2011, 16:37
Репутация: 0

Re: Кто нибудь запустил QgisMapServer?

Сообщение chimich » 26 июл 2011, 20:09

Пробовал поставить QGIS Server по этому описанию.
С апачем и wms-серверами до этого дела не имел, поэтому ставил их методом проб и ошибок. Ставил osgeo installer'ом. Выяснил, что Set Hаndler менять на cgi-script не надо, потому что как раз при этом qgis server не работает. Путь к c:/osgeo4w/apache/bin/ вроде где-то прописан в PATH, поэтому DLL'ки оттуда в c:/osgeo4w/apps/qgis/bin/ я не копировал.
Дошел до того, что апач запускается и работает. QGIS Server тоже, похоже, работает. На запрос
http://localhost/qgis/qgis_mapserv.fcgi ... roject.qgs
ругается:
<ServiceExceptionReport version="1.3.0" xmlns="http://www.opengis.net/ogc">
<ServiceException code="ServiceNotSpecified">
Service not specified. The SERVICE parameter is mandatory
</ServiceException>
</ServiceExceptionReport>
Подскажите, что делаю не так. И где искать логи QGIS Server'а?

Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Re: Кто нибудь запустил QgisMapServer?

Сообщение SS_Rebelious » 27 июл 2011, 10:32

В вашем запросе забыли поставить слэш после метки тома: ...с:tmp_qgs_proj/... а должно быть c:/tmp_qgs_proj/...
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

chimich
Новоприбывший
Сообщения: 8
Зарегистрирован: 13 июл 2011, 16:37
Репутация: 0

Re: Кто нибудь запустил QgisMapServer?

Сообщение chimich » 27 июл 2011, 13:08

SS_Rebelious писал(а):слэш после метки тома: ...должно быть c:/tmp_qgs_proj/...
Похоже, дело не в этом. Со слэшем результат тот же самый - "Service not specified. The SERVICE parameter is mandatory". Ну да, я знаю, что service - обязательный параметр. Но ведь он в запросе указан. Ничего не понимаю.
А до карты при разборе запроса дело, видимо, вообще не доходит. Пробовал вообще не указывать карту и версию в запросе (это ведь необязательные параметры запроса GetCapabilities). Не помогает.
Может быть, в инструкции по установке qgis сервера не описаны какие-то очевидные для людей, знакомых с апачем и qgis, моменты, и я что-то пропустил? Не знаю, что это может быть - инициализировать сам WMS-сервис на сервере, разместить файл проекта в какой-нибудь особой директории, вписать что-то в admin.sld или еще что-то в этом роде..

Ответить

Вернуться в «QGIS»

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

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