A network proxy can lead to issues when exporting maps to PDFs or Images in both Qlik Sense and Qlik NPrinting.
Environment:
- Qlik Sense Enterprise February 2018 and later
- Qlik NPrinting February 2018 and later
Resolution
Note: This setting does not work with NPrinting June 2020 and later. Scroll to section "NPrinting June 2020 and later" for the setting to be applied for those versions.
If you use only Qlik Sense Enterprise, you will need to modify the settings file for the printing service:
C:\Program Files\Qlik\Sense\Printing\printing.exe.config
In a multi-node environment, the change must be done on all nodes with a printing service.
If you use Qlik Sense and NPrinting, you need to modify the engine settings file:
C:\Program Files\NPrintingServer\NPrinting\Engine\engine.config
Changes to be done:
For automatic proxy detection:
<!-- Disables the proxy server, true for active. default true.-->
<add key="webrenderer-no-proxy-server" value="false" />
<!-- Autodetect proxy configuration, true for active, default false. Web content loading during application startup can be delayed due to
network proxy resolution-->
<add key="webrenderer-proxy-auto-detect" value="true" />
OR set the proxy manually:
<!-- Disables the proxy server, true for active. default true.-->
<add key="webrenderer-no-proxy-server" value="false" />
<!--
Specify the HTTP/SOCKS4/SOCKS5 proxy server to use for requests. An individual proxy
server is specified using the format: [<proxy-scheme>://]<proxy-host>[:<proxy-port>], example, socks5://127.0.0.1:8888
default: empty
-->
<add key="webrenderer-proxy-server" value="http://proxyserver_name:8080" /> <!-- check the 'name of your server' + port to be used if not 8080 -->
NPrinting June 2020 and later
The following setting needs to be applied instead in
C:\Program Files\NPrintingServer\NPrinting\Scheduler\renderer.config
For June 2020:
<add key="webrenderer-args" value=";--proxy-server=http://proxyserver:port;--proxy-bypass-list=qlikserver.domain.local" />
For September 2020 and later:
<add key="webrenderer-args" value="--proxy-server=http://proxyserver:port;--proxy-bypass-list=qlikserver.domain.local" />
FAQ:
Question: Why Qlik Sense Printing service needs proxy server configuration.
Answer: Because it needs access to the internet to retrieve map tiles
Question: What data it sends over the internet.
Answer: A request for the map
Question: What data it receives using proxy server.
Answer: The map tiles
Question: Is there any risk involved in opening the internet connectivity on server.
Answer: The same risk you get from opening general internet access to the server. You can allow the specific server
Question: Is there any workaround available, which we can perform to export map object to PDF without setting proxy server?
Answer: Allow the server access to a specific site and don't require it to go through the proxy server