Доступ к Geoserver из OpenLayer 3 получает «500 (внутренняя ошибка сервера)»

Я пытаюсь получить доступ к слою Geoserver, используя следующий код в javascript

  var gkvrtWmsSource =new ol.source.ImageWMS({
            url:'http://geoserver-host-ip/geoserver/ukrforest/wms',
            params: {'LAYERS':'kvartal_polygon'},
            serverType:'geoserver',
            crossOrigin: 'anonymous',
        });

  var gkvrtWmsLayer=new ol.layer.Image({
            source:gkvrtWmsSource
        });

  var map = new ol.Map({
    layers: [
            new ol.layer.Tile({
                        source: new ol.source.OSM()
                    }),
            gkvrtWmsLayer,
            ],
    target: 'map1',
    view: new ol.View({
      center: ol.proj.transform([31, 50], 'EPSG:4326', 'EPSG:3857'),
      zoom: 10
    }),
});

Геосервер был настроен на Ubuntu 16.04 и Apache 2.4.18 (Tomcat7). Согласно https://stackoverflow.com/questions/25490051/access-geoserver-from-internet-ubuntu-server-14-04.-1 добавил следующие инструкции в файл etc/apache2/sites -доступно/000-default.conf

ProxyRequests Off 
ProxyPreserveHost On 
<Proxy *>
        Order deny,allow 
        Allow from all
</Proxy> 
ProxyPass /geoserver "http://localhost:8080/geoserver" 
ProxyPassReverse /geoserver "http://localhost:8080/geoserver"

Затем включил 4 модуля для использования Apache в качестве обратного прокси с mod_proxy в Ubuntu 16.04.

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_balancer
sudo a2enmod lbmethod_byrequests

Перезапустил Апач

Тем не менее, на стороне клиента есть следующее сообщение

wms:1 GET http://geoserver-host-ip/geoserver/ukrforest/wms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&LAYERS=kvartal_polygon&CRS=EPSG%3A3857&STYLES=&WIDTH=444&HEIGHT=881&BBOX=3245143.983882646%2C6312336.14137978%2C3516648.308351592%2C6851064.316733702 403 (Forbidden)

Что я сделал не так?


person Vadym    schedule 16.10.2019    source источник
comment
это работает, когда вы подключаетесь напрямую к порту 8080? если это так, то у вас проблема с apache, и вам следует проверить этот журнал.   -  person Ian Turton    schedule 18.10.2019
comment
Нет. Я поместил ProxyPass /geoserver localhost:8080/geoserver в etc/apache2/sites-available/000-default .conf   -  person Vadym    schedule 18.10.2019
comment
На самом деле я имел в виду и написал wms (веб-картографический сервис)   -  person Vadym    schedule 18.10.2019


Ответы (1)


На самом деле мне удалось получить доступ к слоям Geoserver после переустановки Geoserver. Поэтому, если кто-то собирается использовать Geoserver для публикации слоев карты с помощью Openlayers, детали моего вопроса могут быть приняты во внимание. Особенно если появится проблема с кросс-оригинальным совместным использованием ресурсов (CORS).

person Vadym    schedule 18.10.2019