Feature request #7594

qgis_mapserv.fcgi should respect http_proxy settings from environment

Added by Marco Lechner over 7 years ago. Updated about 6 years ago.

Status:Closed
Priority:Normal
Assignee:-
Category:QGIS Server
Pull Request or Patch supplied:No Resolution:worksforme
Easy fix?:No Copied to github as #:16524

Description

qgis_mapserver.fcgi does not respect http_proxy environment while serving external WMS (included as maplayers in qgs-project-files), because qgis_mapserv.fcgi does not read proxy-properties from .config/qgis.conf as done by QGIS Desktop. QUESTION: how about adding the option to respect http_proxy environment variables but let it overwrite / being overwritten (by) proxy-settings in QSettings settings from qgis.conf?

I'm willing to prepare patch, but i'm unsure how to do this respecting coding standards (how to make environment vars known to several functions? may be put it directly in QNetworkrequest, ...) Any hints welcome? WMS and WFS seem to use different QT-functions to create http-requests .

History

#1 Updated by Jürgen Fischer over 7 years ago

I'd think that is uses the settings - just not the settings of the user running the desktop. Did you try to strace mapserver to see if it tries to access a QGIS.conf? Then copying a QGIS.conf with the right settings should help.

#2 Updated by Alessandro Pasotti about 6 years ago

  • Resolution set to worksforme
  • Status changed from Open to Closed

I think that the problem can be solved (as Juergen suggested) by pointing the server to a copy of a working QGIS2.ini configuration file.
I'm not sure if this is in the docs, but what you normally have to do is to set the environment variable QGIS_OPTIONS_PATH to a folder (readable by the web server user) which contains a QGIS folder which contains the configuration file QGIS2.ini, for example put in your apache virtual server section:

SetEnv QGIS_OPTIONS_PATH "/home/xxx/configfiles/" 

In this case:

ls /home/xxx/configfiles/QGIS/
QGIS2.ini

Also available in: Atom PDF