Hello, I've got a simple and working setup: OS: Ubuntu Server 20.04 QGIS Server: 3.10 Webserver: Apache2
I've got two sites enabled: 1. Listening on Port 80 and handling the rewrite to https: *<VirtualHost *:80>* * ServerAdmin webmaster@localhost ServerName gis.carstenhogertz.de <http://gis.carstenhogertz.de> ServerAlias www.gis.carstenhogertz.de <http://www.gis.carstenhogertz.de> DocumentRoot /var/www/gis.carstenhogertz.de <http://gis.carstenhogertz.de> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined RewriteEngine on RewriteCond %{SERVER_NAME} =www.gis.carstenhogertz.de <http://www.gis.carstenhogertz.de> [OR] RewriteCond %{SERVER_NAME} =gis.carstenhogertz.de <http://gis.carstenhogertz.de> RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]</VirtualHost>* 2. Listening on 443 and handling the SSL stuff: *<IfModule mod_ssl.c><VirtualHost *:443> ServerAdmin webmaster@localhost ServerName gis.carstenhogertz.de <http://gis.carstenhogertz.de> ServerAlias www.gis.carstenhogertz.de <http://www.gis.carstenhogertz.de> DocumentRoot /var/www/gis.carstenhogertz.de <http://gis.carstenhogertz.de> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined SSLCertificateFile /etc/letsencrypt/live/gis.carstenhogertz.de/fullchain.pem <http://gis.carstenhogertz.de/fullchain.pem> SSLCertificateKeyFile /etc/letsencrypt/live/gis.carstenhogertz.de/privkey.pem <http://gis.carstenhogertz.de/privkey.pem> Include /etc/letsencrypt/options-ssl-apache.conf</VirtualHost></IfModule>* And I've got some QGIS Server Environment variables set in fcgid.conf: * # QGIS log FcgidInitialEnv QGIS_SERVER_LOG_FILE /var/log/qgis/qgisserver.log FcgidInitialEnv QGIS_SERVER_LOG_LEVEL 0 FcgidInitialEnv QGIS_PREFIX_PATH /usr FcgidInitialEnv QGIS_PLUGINPATH /var/www/qgis-server/plugins FcgidInitialEnv QGIS_DEBUG 0 # default QGIS project # SetEnv QGIS_PROJECT_FILE /home/ubuntu/projects/world.qgs # von carsten zum testen FcgidInitialEnv QGIS_SERVER_OVERRIDE_SYSTEM_LOCALE "de_DE.UTF-8" # QGIS_AUTH_DB_DIR_PATH must lead to a directory writeable by the Server's FCGI process user FcgidInitialEnv QGIS_AUTH_DB_DIR_PATH "/var/www/qgis-server/qgisserverdb/" FcgidInitialEnv QGIS_AUTH_PASSWORD_FILE "/var/www/qgis-server/qgisserverdb/qgis-auth.db"<IfModule mod_fcgid.c> FcgidConnectTimeout 60 FcgidIOTimeout 120 FcgidMaxRequestLen 26214400 <IfModule mod_mime.c> AddHandler fcgid-script .fcgi </IfModule></IfModule>* Qgis Server works fine. E.g. if I open this URL <https://gis.carstenhogertz.de/cgi-bin/qgis_mapserv.fcgi?MAP=/home/ubuntu/projects/world.qgs&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=-432786,4372992,3358959,7513746&SRS=EPSG:3857&WIDTH=665&HEIGHT=551&LAYERS=countries&FORMAT=image/jpeg> I get the correct map image. The qgisserver.log shows this: *14:00:39 INFO Server[32357]: Qgis Server Settings:14:00:39 INFO Server[32357]: - QGIS_OPTIONS_PATH / '' (Override the default path for user configuration): '' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_PARALLEL_RENDERING / '/qgis/parallel_rendering' (Activate/Deactivate parallel rendering for WMS getMap request): 'false' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_MAX_THREADS / '/qgis/max_threads' (Number of threads to use when parallel rendering is activated): '-1' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_LOG_LEVEL / '' (Log level): '0' (read from ENVIRONMENT_VARIABLE)14:00:39 INFO Server[32357]: - QGIS_SERVER_LOG_FILE / '' (Log file): '/var/log/qgis/qgisserver.log' (read from ENVIRONMENT_VARIABLE)14:00:39 INFO Server[32357]: - QGIS_SERVER_LOG_STDERR / '' (Activate/Deactivate logging to stderr): 'false' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_PROJECT_FILE / '' (QGIS project file): '' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - MAX_CACHE_LAYERS / '' (Specify the maximum number of cached layers): '100' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_CACHE_DIRECTORY / '/cache/directory' (Specify the cache directory): '//.local/share/QGIS/QGIS3/profiles/default/cache' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_CACHE_SIZE / '/cache/size' (Specify the cache size): '52428800' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_SHOW_GROUP_SEPARATOR / '/locale/showGroupSeparator' (Show group (thousands) separator): 'false' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_OVERRIDE_SYSTEM_LOCALE / '/locale/userLocale' (Override system locale): 'de_DE.UTF-8' (read from ENVIRONMENT_VARIABLE)14:00:39 INFO Server[32357]: - QGIS_SERVER_WMS_MAX_HEIGHT / '/qgis/max_wms_height' (Maximum height for a WMS request. The lower one of this and the project configuration is used.): '-1' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_WMS_MAX_WIDTH / '/qgis/max_wms_width' (Maximum width for a WMS request. The most conservative between this and the project one is used): '-1' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_API_RESOURCES_DIRECTORY / '/qgis/server_api_resources_directory' (Base directory where HTML templates and static assets (e.g. images, js and css files) are searched for): '/usr/share/qgis/resources/server/api' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: - QGIS_SERVER_API_WFS3_MAX_LIMIT / '/qgis/server_api_wfs3_max_limit' (Maximum value for "limit" in a features request, defaults to 10000): '10000' (read from DEFAULT_VALUE)14:00:39 INFO Server[32357]: Ini file used to initialize settings: /.local/share/QGIS/QGIS3/profiles/default/QGIS/QGIS3.ini14:00:39 INFO Server[32357]: cacheDirectory: /.local/share/QGIS/QGIS3/profiles/default/cache/14:00:39 INFO Server[32357]: maximumCacheSize: 5242880014:00:39 INFO Server[32357]: Prefix PATH: /usr14:00:39 INFO Server[32357]: Plugin PATH: /usr/lib/qgis/plugins14:00:39 INFO Server[32357]: PkgData PATH: /usr/share/qgis14:00:39 INFO Server[32357]: User DB PATH: //.local/share/QGIS/QGIS3/profiles/default/qgis.db14:00:39 INFO Server[32357]: Auth DB PATH: /var/www/qgis-server/qgisserverdb/qgis-auth.db14:00:39 INFO Server[32357]: SVG PATHS: /usr/share/qgis/svg/://.local/share/QGIS/QGIS3/profiles/default/svg/14:00:39 INFO Server[32357]: Adding service SampleService 1.014:00:39 INFO Server[32357]: Adding service WCS 1.0.014:00:39 INFO Server[32357]: Adding service WFS 1.1.014:00:39 WARNING [32357]: Adding API OGC WFS3 (Draft)14:00:39 INFO Server[32357]: Adding service WMS 1.3.014:00:39 INFO Server[32357]: Adding service WMTS 1.0.014:00:39 INFO Server[32357]: Server initialized14:00:39 INFO ../../src/server/qgsserverplugins.cpp[32357]: load library /usr/lib/qgispython (3.10.4)14:00:39 INFO ../../src/server/qgsserverplugins.cpp[32357]: Python support library loaded successfully.14:00:40 INFO plugin[32357]: SUCCESS - HelloServer init14:00:40 INFO Server[32357]: Server plugin HelloServer loaded!14:00:40 INFO Server[32357]: Server python plugins loaded14:00:40 INFO Server[32357]: ******************** New request ***************14:00:40 INFO Server[32357]: Request URL: https://gis.carstenhogertz.de:443/cgi-bin/qgis_mapserv.fcgi?MAP=/home/ubuntu/projects/world.qgs&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=-432786,4372992,3358959,7513746&SRS=EPSG:3857&WIDTH=665&HEIGHT=551&LAYERS=countries&FORMAT=image/jpeg <https://gis.carstenhogertz.de:443/cgi-bin/qgis_mapserv.fcgi?MAP=/home/ubuntu/projects/world.qgs&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=-432786,4372992,3358959,7513746&SRS=EPSG:3857&WIDTH=665&HEIGHT=551&LAYERS=countries&FORMAT=image/jpeg>14:00:40 INFO Server[32357]: Environment:14:00:40 INFO Server[32357]: ------------------------------------------------14:00:40 INFO Server[32357]: SERVER_NAME: gis.carstenhogertz.de <http://gis.carstenhogertz.de>14:00:40 INFO Server[32357]: REQUEST_URI: /cgi-bin/qgis_mapserv.fcgi?MAP=/home/ubuntu/projects/world.qgs&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=-432786,4372992,3358959,7513746&SRS=EPSG:3857&WIDTH=665&HEIGHT=551&LAYERS=countries&FORMAT=image/jpeg14:00:40 INFO Server[32357]: SCRIPT_NAME: /cgi-bin/qgis_mapserv.fcgi14:00:40 INFO Server[32357]: HTTPS: on14:00:40 INFO Server[32357]: REMOTE_ADDR: 78.49.47.23614:00:40 INFO Server[32357]: SERVER_PORT: 44314:00:40 INFO Server[32357]: QUERY_STRING: MAP=/home/ubuntu/projects/world.qgs&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=-432786,4372992,3358959,7513746&SRS=EPSG:3857&WIDTH=665&HEIGHT=551&LAYERS=countries&FORMAT=image/jpeg14:00:40 INFO Server[32357]: REQUEST_METHOD: GET14:00:40 INFO Server[32357]: HTTP_ACCEPT: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.914:00:40 INFO Server[32357]: HTTP_USER_AGENT: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.3614:00:40 WARNING [32357]: formatString is: image/jpeg14:00:40 WARNING [32357]: HelloFilter.requestReady14:00:40 INFO Server[32357]: BBOX:-432786,4372992,3358959,751374614:00:40 INFO Server[32357]: FORMAT:image/jpeg14:00:40 INFO Server[32357]: HEIGHT:55114:00:40 INFO Server[32357]: LAYERS:countries14:00:40 INFO Server[32357]: MAP:/home/ubuntu/projects/world.qgs14:00:40 INFO Server[32357]: REQUEST:GetMap14:00:40 INFO Server[32357]: SERVICE:WMS14:00:40 INFO Server[32357]: SRS:EPSG:385714:00:40 INFO Server[32357]: TEST_NEW_PARAM:ParamsFilter14:00:40 INFO Server[32357]: VERSION:1.3.014:00:40 INFO Server[32357]: WIDTH:66514:00:45 INFO Server[32357]: WMS Request parameters:14:00:45 INFO Server[32357]: - SRS : EPSG:385714:00:45 INFO Server[32357]: - WIDTH : 66514:00:45 INFO Server[32357]: - HEIGHT : 55114:00:45 INFO Server[32357]: - BBOX : -432786,4372992,3358959,751374614:00:45 INFO Server[32357]: - LAYERS : countries14:00:45 INFO Server[32357]: - FORMAT : image/jpeg14:00:45 INFO Server[32357]: - VERSION : 1.3.014:00:45 INFO server[32357]: Parallel rendering deactivated14:00:46 WARNING [32357]: SUCCESS - ParamsFilter.responseComplete14:00:46 WARNING [32357]: WatermarkFilter.responseComplete: image ready image/jpeg14:00:46 WARNING [32357]: HelloFilter.responseComplete14:00:46 INFO Server[32357]: Request finished in 5724 ms* But now I want to open the QGIS Server's Landing page https://gis.carstenhogertz.de/cgi-bin/qgis_mapserv.fcgi/wfs3 like here: https://ows.geo.hu-berlin.de/cgi-bin/qgis_mapserv.fcgi/wfs3 but I alway get Internal Server Error. I read somewhere that there is a bug for httpS, so I once got it working in http. But after I decided to clean up my config I couldn't get it back to work. So I guess I am missing something in the three config files above. Like Directory of Location Tag or something. When trying to open the /wfs3 landing page, the qgisserver.log looks like this: 14:09:05 INFO Server[32357]: ******************** New request *************** 14:09:05 INFO Server[32357]: Request URL: https://gis.carstenhogertz.de:443/cgi-bin/qgis_mapserv.fcgi/wfs3? 14:09:05 INFO Server[32357]: Environment: 14:09:05 INFO Server[32357]: ------------------------------------------------ 14:09:05 INFO Server[32357]: SERVER_NAME: gis.carstenhogertz.de 14:09:05 INFO Server[32357]: REQUEST_URI: /cgi-bin/qgis_mapserv.fcgi/wfs3 14:09:05 INFO Server[32357]: SCRIPT_NAME: /cgi-bin/qgis_mapserv.fcgi 14:09:05 INFO Server[32357]: HTTPS: on 14:09:05 INFO Server[32357]: REMOTE_ADDR: 78.49.47.236 14:09:05 INFO Server[32357]: SERVER_PORT: 443 14:09:05 INFO Server[32357]: QUERY_STRING: 14:09:05 INFO Server[32357]: REQUEST_METHOD: GET 14:09:05 INFO Server[32357]: HTTP_ACCEPT: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 14:09:05 INFO Server[32357]: HTTP_USER_AGENT: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36 14:09:05 INFO Server[32357]: Using default configuration file path: /usr/lib/cgi-bin/admin.sld 14:09:05 WARNING [32357]: HelloFilter.requestReady 14:09:05 INFO Server[32357]: TEST_NEW_PARAM:ParamsFilter 14:09:05 INFO Server[32357]: Using default configuration file path: /usr/lib/cgi-bin/admin.sld 14:09:05 INFO Server[32357]: Trying URL path: /cgi-bin/qgis_mapserv.fcgi/wfs3 for /wfs3 14:09:05 INFO Server[32357]: API OGC WFS3 (Draft) accepts the URL path /cgi-bin/qgis_mapserv.fcgi/wfs3 14:09:05 INFO Server[32357]: Checking API path /cgi-bin/qgis_mapserv.fcgi/wfs3 for /collections/(?<collectionId>[^/]+)/items(\.geojson|\.json|\.html)?$ 14:09:05 INFO Server[32357]: Checking API path /cgi-bin/qgis_mapserv.fcgi/wfs3 for /collections/(?<collectionId>[^/]+)/items/(?<featureId>[^/]+?)(\.json|\.geojson|\.html)?$ 14:09:05 INFO Server[32357]: Checking API path /cgi-bin/qgis_mapserv.fcgi/wfs3 for /collections(\.json|\.html)?$ 14:09:05 INFO Server[32357]: Checking API path /cgi-bin/qgis_mapserv.fcgi/wfs3 for /collections/(?<collectionId>[^/]+?)(\.json|\.html)?$ 14:09:05 INFO Server[32357]: Checking API path /cgi-bin/qgis_mapserv.fcgi/wfs3 for /conformance 14:09:05 INFO Server[32357]: Checking API path /cgi-bin/qgis_mapserv.fcgi/wfs3 for /static/(?<staticFilePath>.*)$ 14:09:05 INFO Server[32357]: Checking API path /cgi-bin/qgis_mapserv.fcgi/wfs3 for /api 14:09:05 INFO Server[32357]: Checking API path /cgi-bin/qgis_mapserv.fcgi/wfs3 for (.html|.json)?$ 14:09:05 INFO Server[32357]: Found API handler getLandingPage 14:09:05 WARNING [32357]: SUCCESS - ParamsFilter.responseComplete 14:09:05 CRITICAL Server[32357]: 'NoneType' object has no attribute 'upper' 14:09:05 INFO Server[32357]: Request finished in 6 ms Apaches access.log: *78.49.47.236 - - [10/Mar/2021:14:09:05 +0100] "GET /cgi-bin/qgis_mapserv.fcgi/wfs3 HTTP/1.1" 500 3933 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36"* and Apaches error.log: *[Wed Mar 10 14:09:05.291240 2021] [ssl:info] [pid 32284:tid 281473240236432] [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH01964: Connection to child 77 established (server gis.carstenhogertz.de:443 <http://gis.carstenhogertz.de:443>)[Wed Mar 10 14:09:05.292800 2021] [ssl:debug] [pid 32284:tid 281473240236432] ssl_engine_kernel.c(2372): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH02043: SSL virtual host for servername gis.carstenhogertz.de <http://gis.carstenhogertz.de> found[Wed Mar 10 14:09:05.292885 2021] [ssl:debug] [pid 32284:tid 281473240236432] ssl_engine_kernel.c(2372): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH02043: SSL virtual host for servername gis.carstenhogertz.de <http://gis.carstenhogertz.de> found[Wed Mar 10 14:09:05.292922 2021] [core:debug] [pid 32284:tid 281473240236432] protocol.c(2313): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH03155: select protocol from , choices=h2,http/1.1 for server gis.carstenhogertz.de <http://gis.carstenhogertz.de>[Wed Mar 10 14:09:05.323058 2021] [ssl:debug] [pid 32284:tid 281473240236432] ssl_engine_kernel.c(2254): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH02041: Protocol: TLSv1.3, Cipher: TLS_AES_256_GCM_SHA384 (256/256 bits)[Wed Mar 10 14:09:05.323462 2021] [socache_shmcb:debug] [pid 32284:tid 281473240236432] mod_socache_shmcb.c(493): AH00831: socache_shmcb_store (0x74 -> subcache 20)[Wed Mar 10 14:09:05.323505 2021] [socache_shmcb:debug] [pid 32284:tid 281473240236432] mod_socache_shmcb.c(847): AH00847: insert happened at idx=0, data=(0:32)[Wed Mar 10 14:09:05.323530 2021] [socache_shmcb:debug] [pid 32284:tid 281473240236432] mod_socache_shmcb.c(850): AH00848: finished insert, subcache: idx_pos/idx_used=0/1, data_pos/data_used=0/225[Wed Mar 10 14:09:05.323555 2021] [socache_shmcb:debug] [pid 32284:tid 281473240236432] mod_socache_shmcb.c(515): AH00834: leaving socache_shmcb_store successfully[Wed Mar 10 14:09:05.323946 2021] [socache_shmcb:debug] [pid 32284:tid 281473240236432] mod_socache_shmcb.c(493): AH00831: socache_shmcb_store (0xcc -> subcache 12)[Wed Mar 10 14:09:05.324010 2021] [socache_shmcb:debug] [pid 32284:tid 281473240236432] mod_socache_shmcb.c(847): AH00847: insert happened at idx=0, data=(0:32)[Wed Mar 10 14:09:05.324069 2021] [socache_shmcb:debug] [pid 32284:tid 281473240236432] mod_socache_shmcb.c(850): AH00848: finished insert, subcache: idx_pos/idx_used=0/1, data_pos/data_used=0/226[Wed Mar 10 14:09:05.324091 2021] [socache_shmcb:debug] [pid 32284:tid 281473240236432] mod_socache_shmcb.c(515): AH00834: leaving socache_shmcb_store successfully[Wed Mar 10 14:09:05.324523 2021] [ssl:debug] [pid 32284:tid 281473240236432] ssl_engine_kernel.c(415): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH02034: Initial (No.1) HTTPS request received for child 77 (server gis.carstenhogertz.de:443 <http://gis.carstenhogertz.de:443>)[Wed Mar 10 14:09:05.324745 2021] [authz_core:debug] [pid 32284:tid 281473240236432] mod_authz_core.c(817): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH01626: authorization result of Require all granted: granted[Wed Mar 10 14:09:05.324774 2021] [authz_core:debug] [pid 32284:tid 281473240236432] mod_authz_core.c(817): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH01626: authorization result of <RequireAny>: granted[Wed Mar 10 14:09:05.325028 2021] [authz_core:debug] [pid 32284:tid 281473240236432] mod_authz_core.c(817): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH01626: authorization result of Require all granted: granted[Wed Mar 10 14:09:05.325057 2021] [authz_core:debug] [pid 32284:tid 281473240236432] mod_authz_core.c(817): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH01626: authorization result of <RequireAny>: granted[Wed Mar 10 14:09:05.334627 2021] [ssl:debug] [pid 32284:tid 281473240236432] ssl_engine_io.c(1102): [client 78.49.47.236:57131 <http://78.49.47.236:57131>] AH02001: Connection closed to child 77 with standard shutdown (server gis.carstenhogertz.de:443 <http://gis.carstenhogertz.de:443>)* Any ideas why this 500 Internal Server Error occures? Sorry, my first post here. So maybe formatting is very bad. Thanks!
_______________________________________________ Qgis-user mailing list Qgis-user@lists.osgeo.org List info: https://lists.osgeo.org/mailman/listinfo/qgis-user Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user