How it works
All requests tohttp://127.0.0.1:9090/{taskId}/ (regardless of sub-path) are resolved to the single configured file. The response includes the correct Content-Type header based on the file extension, and optionally a Content-Encoding: gzip or Content-Encoding: deflate header if the client supports compression.
URL format
{filename} portion is the bare name of the file (no directory path). For example, if the task ID is report and the file is annual-report-2025.pdf:
All requests to a file task — regardless of the path after the task ID — resolve to the same configured file. The filename in the URL is informational; it does not change which file is returned.
Creating a file task
Set the task ID and name
Enter a short ID for the URL (for example,
data). The file will be accessible at http://127.0.0.1:9090/data/{filename}.Enter a Name to identify the task in the list.Configure options (optional)
- Gzip — leave enabled to compress text-based files (HTML, JSON, CSV, etc.). Disable for binary or already-compressed files.
- Data limit — set a byte cap to restrict the total data served.
Gzip compression
When gzip is enabled, WebPublish checks the client’sAccept-Encoding header and compresses the response accordingly:
- If the client accepts
gzip, the response is gzip-compressed. - If the client accepts
deflate(but not gzip), deflate compression is used. - If the client does not advertise compression support, the file is sent uncompressed.
Content-Encoding header is set appropriately so the client can decompress automatically.
MIME type detection
WebPublish maps the file extension to the appropriateContent-Type header. Common examples:
| Extension | Content-Type |
|---|---|
.html | text/html |
.json | application/json |
.geojson | application/json |
.pdf | application/pdf |
.png | image/png |
.js | application/javascript |
.csv | text/csv |