GeoServer. OpenLayers. Apache

Поделиться
HTML-код
  • Опубликовано: 26 ноя 2024

Комментарии • 62

  • @gis
    @gis  2 года назад +1

    Наш сайт - flexatel.ru/
    QGIS plugin source code (follow us) - github.com/mokrayaGISka/qgis-query-selection-plugin
    Присоединяйтесь к лекциям - просто напишите в телеграм @geofuckCode
    Follow us on github - github.com/mokrayaGISka/
    В данном видеоуроке показана работа с GeoServer на примере публикации shapefile. Также рассмотрены основы библиотеки OpenLayers на примере отображения WMS и WFS. Дан краткий обзор работы с Apache, рассказано о кроссдоменных запросах и работе с proxy.
    Ссылки на ресурсы:
    GeoServer - geoserver.org/
    Apache - httpd.apache.org/
    Apache Lounge - www.apachelounge.com/download/
    OpenLayers - openlayers.org/

  • @gis
    @gis  7 лет назад +3

    Как верно отметил Максим, в данной конкретной задаче мы могли обойтись без прокси и апач сервера. Чтобы приложение отображало wfs необходимо его поместить в папку data_dir/www.. и запускать его localhost:8080/geoserver/www/myApp.html . Однако пример был разобран именно с апач, т.к. это решение является решением в общем виде, т.к. отображение карты может быть лишь частью какого-либо крупного проекта, который не имеет смысла хранить именно на геосервере. Ну и потом показать работу с апач тоже полезно.

    • @maksimanikin2024
      @maksimanikin2024 7 лет назад

      Понял. Вполне логично. Возникает еще 1 вопрос. А Apache был выбран приследуя какие то цели, ведь есть например tomcat, который несколько отличается... и как мне показалось на первый взгляд (на ОЧЕНЬ первый взгляд) =)) несколько более удобный и практичный с данной точки зрения (ГИС, геопорталов и т.д.)?
      П.С. На безошибочность суждений не претендую....

    • @gis
      @gis  7 лет назад +1

      Apache Tomcat как контейнер сервлетов (приложение GeoServer - это и есть сервлет), конечно, гораздо удобнее, чем Jetty, который устанавливается вместе с GeoServer (например, тем, что с помощью tomcat можно управлять приложениями). Однако это удобнее не столько с точки зрения ГИС, а скорее с точки зрения производства и работы с сервером. Также при установке GeoServer на apache tomcat мы бы не поработали с proxy. Но если отмести обучающую нацеленность видеозаписей, то я, конечно, с вами согласен. Apache Tomcat и установленный на него GeoServer выглядят предпочтительнее.
      Если вы хотите - запишите какое-нибудь видео на эту тему.

    • @maksimanikin2024
      @maksimanikin2024 7 лет назад

      Мне интересно предложения записать видео (обязательно запишу), но к сожалению работы очень много (т.е. запишу, но потом). Надеюсь созрею, выделю время, но пока - как зритель-ценитель )

    • @xumanert6384
      @xumanert6384 6 лет назад

      поместил myApp.html в папку "c:\Geoserver\data_dir\www\" запустил localhost:8080/geoserver/www/myApp.html все равно выдает ошибку... что ещё подправить, чтобы не юзать прокси???

  • @braitind578
    @braitind578 5 лет назад

    Фоновая картинка отличная! Плоская земля

  • @СемёнЧупраков-з3з
    @СемёнЧупраков-з3з 7 лет назад

    Здравствуйте, не могли бы вы показать, как записывать в wfs данные с формы на сайте через php

  • @seemabarate9758
    @seemabarate9758 7 лет назад +1

    Hi sir i have question:
    I want to display vector (WFS) layer on map. I have requested vector layer through WFS GetFeature from GeoServer in GML2 format but when displaying WFS layer its showing on different place. further investigating same layer i have requested in format Geojson its showing on correct location. My vector layer is in EPSG:4326 projection and when displaying in Geojson format its correctly displaying but whenever same vector layer with same projection(EPSG 4326) requested in GML2 format its showing on wrong place which is on EPSG:900913 location (i have verified this issue as i changed layer projection in to EPSG 900913 in Geoserver and requested layer in Geojson format and its displaying on wrong place where GML2 layer was shown and again i changed projection of layer to EPSG 4326 and its showing on exact location with GeoJson layer format). As i understand WFS layer is in EPSG:4326 projection in Geoserver but whenever layer requested in GML2 format its converting or changing projection to EPSG 900913 and showing on wrong place. My question is how to display GML2 layer in correct position(EPSG4326) and why GML2 layer automatically changing projection? or if GML2 showing on EPSG900913 what is the code i can apply so it will be in EPSG4326 ? I am giving here my code also:jsfiddle.net/seema30/dww9gxcy/ please give the suggestions.Thank you sir.

    • @gis
      @gis  7 лет назад +2

      Good afternoon.
      Firstly you should read this:
      gis.stackexchange.com/questions/13249/how-to-reproject-base-layers-in-openlayers
      Then you can reproject your WFS layer on-the-fly using OpenLayers 3. Here you can see some examples of doing it:
      dev.openlayers.org/examples/using-proj4js.html
      and the js code: dev.openlayers.org/examples/using-proj4js.js
      gis.stackexchange.com/questions/8196/reproject-a-vector-layer-epsg27700-using-wfs-onto-a-googlemaps-background-ep
      Also you can use readFeatures:
      stackoverflow.com/questions/29363814/problems-reading-gml-file-not-reprojected

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      Ok ...thanks

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      Thanks for helping,Given all the links helps me to solve the problem.There is only the projection problem.Through this link "stackoverflow.com/questions/29363814/problems-reading-gml-file-not-reprojected" I solved problem.

  • @LianaOk
    @LianaOk 7 лет назад

    Спасибо за отличное видео. Такой вопрос. В моем случае GeoServer 2.11 заинсталлирован на Apache Tomcat 8. Я так понимаю, что в данном случае, вместо httpd.conf мне нужно добавить прокси настройки в файл conf/server.xml (ProxyPass /geoserver ....) ?

    • @gis
      @gis  7 лет назад

      Добрый вечер, а какую задачу вам надо решить?

    • @LianaOk
      @LianaOk 7 лет назад

      Конечная цель отобразить векторную карту в Kibana, используя WFS GetFeature, чтобы получить примерно следующий результат (но с другими "features"):
      www.elastic.co/guide/en/kibana/current/regionmap.html
      В моем случае я использую GeoServer 2.11 с Jetty, который отконфигурирован в соответствии с рекомендациями:
      stackoverflow.com/questions/8303162/jetty-cross-origin-filter
      Но, несмотря на все попытки, все время сталкиваюсь с одной и той же проблемой: "XMLHttpRequest cannot load localhost:8080/geoserver... Origin 'localhost:5601' is therefore not allowed access. The response had HTTP status code 403". Поэтому решила попробовать заменить jetty-server-9.2.13.v20150730 на Apache Tomcat и далее действовать как объяснено в вашем видео. Если у вас есть какие-то идеи по решению данной проблемы, буду очень признательна. Спасибо.

    • @LianaOk
      @LianaOk 7 лет назад

      Ja reshila problemu, ispoljzuja Apache Tomcat 7 i filtri dlja Catalina (vmesto Jetty).

  • @yergenabdrakhmanov8243
    @yergenabdrakhmanov8243 5 лет назад

    здравствуйте можете ли вы отправить тот код на видео я скачал openlaers с сайта но там много папок и не нашел нужного файла, фала который открывал как у вас или если не сложно можете написать название файла !

    • @gis
      @gis  5 лет назад

      Добрый вечер, можете написать email - отправим вам файлы

  • @seemabarate9758
    @seemabarate9758 7 лет назад

    sorry for the disturb ,Actually i am fresher student so many error are coming ,I have done GML WFS layer code but my map return result changed position ,like if I given lat/long then returns long/lat.Can I send my code to you.Please help me.Thanks.

    • @gis
      @gis  7 лет назад

      Yes. You may send me your code (email in the description of the channel). I'll try to look at it this night.

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      Ok, I will send you mail ,Thanks.

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      I solved my problem ,I am trying to solve this problem from two days ,when i mailed you , after some time i got solution .Actually there is only version problem ,In WFS 1.0.0 by default is long/lat , but in WFS 1.1.0 is given correct format lat/long.I want to display popup+info ,so Can i use GetFeatureInfo in Gml-Wfs layer .

    • @gis
      @gis  7 лет назад +1

      You can see these links for some help:
      stackoverflow.com/questions/24806006/convert-ajax-response-to-an-ol3-gml-layer
      stackoverflow.com/questions/38779025/openlayers-3-gml-format-not-parsing-entire-file
      gis.stackexchange.com/questions/133235/openlayers-3-wms-getfeatureinfo-popup

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      Thanks.

  • @andresguerrero4134
    @andresguerrero4134 5 лет назад

    hi sir i have a problem, when i try to start apache server it shows this message
    (OS 10048)Solo se permite un uso de cada direcci¾n de socket (protocolo/direcci¾n de red/puerto) : AH00072: make_sock: could not bind to address [::]:80
    (OS 10048)Solo se permite un uso de cada direcci¾n de socket (protocolo/direcci¾n de red/puerto) : AH00072: make_sock: could not bind to address 0.0.0.0:80
    AH00451: no listening sockets available, shutting down
    AH00015: Unable to open logs
    sorry that is in spanish, please help me if you can, thanks

    • @gis
      @gis  5 лет назад

      Dear Andres,
      How did you install Apache? Were there some issues while installation process?
      In this video we used that link
      www.apachelounge.com/download/
      The installation of apache lounge started at 11:19 in this video
      ruclips.net/video/26Uq_xQDbHk/видео.html

  • @ЛейлаАхмадиева-с8ю

    можно исходники, пожалуйста

    • @gis
      @gis  5 лет назад

      К сожалению, нет
      Данная версия библиотеки уже давно устарела.
      Сейчас актуальна вот та openlayers.org/
      В целом ничего сверхъестественного в коде нет - вам будет достаточно справки openlayers.org/en/latest/apidoc/

  • @bossmohammed2017
    @bossmohammed2017 6 лет назад

    Hello Sir. This video is very helpful. However, I am currently trying to build an application with OpenLayers 4 and Geoserver. I am fimding it difficult to show a pop up for a wms layer that i have added because of cross domains. I plan to use IIS aa the web server but i cant find a way to maoe the information appear on the popup. Sir please assist me. I can share with you all information and screenshots if required.

    • @gis
      @gis  6 лет назад

      Good evening. So you should not get cross domain error. Where is your .html file located?

    • @bossmohammed2017
      @bossmohammed2017 6 лет назад

      My HTML file is located in the IIS folder which is C-> inetpub -> wwwroot. I have assigned it the port 8040 and Geoserrver is assigned the port 8080. I am using getFeatureInfo to request for the URL to display all the imformation but it is not showing on popup. Sir can you assist me with yojr email so that I can share with you a screenshot of the error I am getting.

    • @gis
      @gis  6 лет назад

      If you'll put your .html file to data_dir/www on geoserver - it'll work without cors error.
      And start your application like 8080/geoserver/www/myApp.html
      But if you want to use IIS - you should create some proxy settings in IIS config. In this video you can see how create them in apache
      My e-mail in a channel description if you need it

    • @bossmohammed2017
      @bossmohammed2017 6 лет назад

      Thank you very much sir. that is really helpful. But just for future reference is there a way I can get the popup if geoserver and my .html file are on different ports??

    • @gis
      @gis  6 лет назад

      Yes. As I told - you can set proxy on IIS

  • @seemabarate9758
    @seemabarate9758 7 лет назад

    Very nice tutorial,but i have error when starting apache server .This is error "httpd.exe: Syntax error on line 139 of C:/Apache24/conf/httpd.conf: Can't locate API module structure `_module' in file C:/Apache24/modules/mod_proxy.so: No error " please help me.Your tutorial helps me a lot but accuring this error i stuck here .Thanks

    • @gis
      @gis  7 лет назад

      You can send me your httpd.conf file (email in the description of the channel) and I'll try to help you.

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      Thank you very much.. Actually i solved the probelm. Your videos are very nice for learning. Is there any videos related to WFS GML layer in openlayers 3. Thank you once again.

    • @gis
      @gis  7 лет назад +1

      For that moment we don't have such videos. But we hope we'll make them as soon as possible.
      You can use some links on this theme:
      Documentation - openlayers.org/en/v3.5.0/apidoc/ol.format.GML.html
      Simple example - dev.openlayers.org/sandbox/jachym/donut_polygons/examples/gml-layer.html
      Another example - stackoverflow.com/questions/38876425/load-gml-layer-with-openlayers-3

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      Thank you very much.

  • @aLeX940725
    @aLeX940725 7 лет назад

    CODE PLEASE?
    I HAVE PROBLEMS AND I CAN`T DO :/

    • @gis
      @gis  7 лет назад

      What kind of problems do you have?
      Write me an email to get a code.

    • @yigajosephat5728
      @yigajosephat5728 5 лет назад

      hello. thanks for the video.
      please drop the code @@gis

    • @gis
      @gis  5 лет назад

      @@yigajosephat5728 Thank you
      Unfortunately we do not have source code for today

  • @_Murmuration
    @_Murmuration 5 лет назад

    Здравствуйте, а куда вы библиотеку OpenLayers подключали?Я не нашла нужных файлов, можете пожалуйста скинуть код с видео на почту adelina-ayupova-00@mail.ru

    • @gis
      @gis  5 лет назад

      Добрый день, отправили

    • @_Murmuration
      @_Murmuration 5 лет назад

      Спасибо большое

    • @87fenomen
      @87fenomen 5 лет назад

      @@gis а можно еще мне код на почту romaniosh@gmail.com?

    • @gis
      @gis  5 лет назад

      @@87fenomen Добрый день, сейчас в ol используется уже более новая версия, чем разобрана в видео
      Посмотрите пример здесь
      openlayers.org/en/latest/doc/quickstart.html

  • @seemabarate9758
    @seemabarate9758 7 лет назад

    Hi sir,
    I have question related to mouse hover and popup for multiple layers Right now i am developing one web map application for urban growth time wise. I have developed web map but i am stuck in popup and mouse hover for the multiple WFS/WMS layers. I want to activate mouse hover and popup for all the layers but somehow its not working its only working for one layer. Please guide me how can i do this with multiple layers.
    Herewith i am attaching all the codes and associated folder please help me.
    data link: www.dropbox.com/sh/h7df2i04g0tpspp/AAAl53YCeMm6r6qyYEDmlB5-a?dl=0
    Thanking you,
    Regards,
    Seema Barate,
    Navi Mumbai, India.

    • @gis
      @gis  7 лет назад

      Hope these links would help you:
      openlayers.org/en/v3.4.0/examples/vector-layer.html
      jorix.github.io/OL-FeaturePopups/examples/feature-popups.html

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      sorry sir,I saw the code from both the link but in first link only one vector layer is used,I wan't multiple vector layers,and in git-hub link I saw the feature popup example but in that example i don't understand the code that much,mean where i define the layer features or attributes and where i add the layers in this code .Actually whatever given in feature popup example that exactly i want but don't understand the code properly.If you have any idea please help me.

    • @gis
      @gis  7 лет назад

      Could you please tell me what exactly you misunderstand in these 2 links?
      jorix.github.io/OL-FeaturePopups/examples/feature-popups-common.js
      jorix.github.io/OL-FeaturePopups/examples/feature-popups.js

    • @seemabarate9758
      @seemabarate9758 7 лет назад

      I understand now but featurepopup,class,getrenderdimensions are undefined errors are displaying ,I just try to use ol3 select method but still is not working .Its ol2 example.

    • @gis
      @gis  7 лет назад

      Here you can see 3 simple layers. And on hover we can see some information about each of these layers.
      jsfiddle.net/x4gdxweo/119/
      So you need to use map.on('pointermove', function(e) {...}) and inside it map.forEachFeatureAtPixel(e.pixel, function(feature) {...})