In most cases of use of QGIS Server, it is not necessary to access the layers in write mode.
The read-only mode is sufficient.
We would like to introduce a new flag Qgis::ProjectReadFlag::ForceLayerReadOnly to
open layers in a read-only mode.
This new feature allows to specify extra tokens allowed for
WMS FILTER definition.
The current list of accepted tokens is rather small and
this setting will allow the sysadmins to enlarge the list
of allowed tokens.
keyword in Python, so this value was previously inaccessible to PyQGIS
scripts
Also change all references to Qgis::MessageLevel values to their
fully qualified names, to ease a future transition to an enum
class (when sip bugs are fixed)
Fixes#42996
The goals are:
* To have better result in the GetCapabilities URL without having to fill it in the Project configuration
* Be able to be set by an integrator with environment variable or by providing headers from a proxy
The server resolution will use the following order:
- Value defined in the project per service.
- The ``<service>_SERVICE_URL`` environment variable.
- The ``SERVICE_URL`` environment variable.
- The custom ``X-Qgis-<service>-Servcie-Url`` header.
- The custom ``X-Qgis-Service-Url`` header.
- Build form the standard ``Forwarded`` header.
- Build form the pseudo standard ``X-Forwarded-Host`` and ``X-Forwarded-Proto`` headers.
- Build form the standard ``Host`` header and the server protocol.
- Build form the server name and the server protocol.
Defined a new QGIS Server setting environnement `QGIS_SERVER_DONT_LOAD_LAYOUTS` to do not load layouts when QGIS Server reads projects.
This variable will disable QGIS Server GetPrint capabilities.
Allow to override the default behavior in case of
bad layers (which is to invalidate the whole project).
When set to TRUE, the bad layers are skipped and the
project is considered available.
Followup #8922