PUQ Mautic

Addon Module

The PUQ Web Hosting addon is the control centre for your whole fleet: a dashboard, the Infrastructure pages (web / mail / DNS servers, server groups, DNS zones & templates), per‑node Server actions, module Settings, the task queue and operation logs, and the Vanity widget generator. The addon is required — it owns the schema, the queue and the cron runner.

Dashboard

PUQ Web Hosting module WHMCS

Order now | Download | Community

The addon Home page is a one‑glance view of your whole hosting operation.

Addon dashboard

Cards

Card Shows
Services Total provisioned services (View → the Services list).
Servers Total servers (Manage → Infrastructure).
Task Queue Tasks currently in the queue (View → Logs → Task Queue).
DNS Zones Total logical DNS zones (Manage).
Server Groups Shortcut to group management.
Settings Shortcut to cron / retry policy / tables.

Panels

Navigation

The top bar is the same everywhere:

Infrastructure: Servers

PUQ Web Hosting module WHMCS

Order now | Download | Community

Infrastructure is where you register and monitor every node. The same servers are presented under three filtered lists — Web, Mail and DNS — based on their capabilities.

Web servers

Each row carries live CPU / RAM / Disk / Load bars, the panel‑OK probe, the Hestia version & OS, the group, the capacity used/max, and per‑row actions (open Server Actions, refresh status, sync, edit, delete).

Capabilities decide the pools

A node's Web / Mail / DNS capability flags decide which list it appears in and which roles can be placed on it. See Add web / mail / DNS servers for the editor and Deployment & Segmentation → Server segmentation for how to design your topology.

Mail servers

DNS servers are independent and attached to groups (one server can serve many groups):

DNS servers

Open a server → Server Actions

Clicking a server's open/manage action takes you to the Server Actions page for that node — a full per‑node management console (live config, group‑config drift, PHP versions, file‑manager installs, system services, Hestia users & packages, IPs, maintenance, logs). That page is documented next.

Server Actions (per node)

PUQ Web Hosting module WHMCS

Order now | Download | Community

Opening a server gives you a per‑node console with live stat cards and a tab bar: System config · Group config · PHP · File Manager · Services · Users · Packages · IPs · Maintenance · Log.

Server Actions — system config

System config

A live, read‑only dump of the node's hestia.conf key/value pairs — handy for confirming what a server is actually running.

Group config (drift)

Compares the node's live config against what its group expects, key by key, with a MATCH / drift status, and lets you Apply group config to push the managed values:

Server Actions — group config drift

This is the per‑node view of the group's managed hestia.conf (see Server‑group editor).

PHP

Install / remove PHP versions (5.6 – 8.4) with their FPM service, IonCube, and the Ondrej/Sury repositories — with an online gate and a recent‑tasks panel.

Server Actions — PHP

File Manager

Install and manage the two built‑in file managers per node — FileGator (Vue SPA, drag‑and‑drop) and net2ftp (native chmod UI). Each shows its installed version & URL, a custom download URL, and Reinstall / Uninstall / Refresh.

Server Actions — file managers

Services / Users / Packages

Maintenance & Log

Server‑Group Editor

PUQ Web Hosting module WHMCS

Order now | Download | Community

Open a group (Infrastructure → Server Groups → Open) to manage its members, its centrally‑managed hestia.conf, its DNS cluster and (for vanity groups) its sellable domains. A standard group has these tabs: Actions · General · All‑servers config · Web config · Mail config · DNS config · Variables · Standard files · DNS servers.

Actions — bulk apply per role

Group — Actions

The Actions tab lists the members with their Type and Status, and pushes config/files per role: Apply Hestia config to all / web only / mail only / DNS only, Apply standard files to web, Refresh status. Applying enqueues one task per matching active node.

General — name & purpose

Name, description and the Group purpose (Standard vs Vanity). See Server Groups and the Vanity Mode chapter.

Managed hestia.conf (role‑targeted)

The module can centrally manage Hestia config keys and keep every node in sync (with drift detection on the node's Group config tab). The keys are split by role so they only ever land on the right tier:

Empty fields are not managed — the module only pushes the keys you fill in.

Variables

Group‑wide {name} key/value pairs substituted into DNS zone template records (e.g. ns1, ns2). Empty values fall through to the product's WHMCS configoptions; if both are empty the worker drops template records that reference the variable.

Variables

Standard files (rebranding)

Rebrandable Hestia skeleton files for web nodes — error pages (403/404/410/5xx), the default user index.html / robots.txt, the suspended‑account page, and the unassigned‑IP vhost. Each can be Overridden (your content) or Pulled from a server, with default/overridden badges.

Standard files

DNS servers (the cluster)

Attach independent DNS servers to the group (active‑active replication) and set the group's default zone template + SOA defaults.

Group — DNS servers

A Vanity group shows only General / Variables / DNS servers / Vanity domains — the hosting‑config tabs are hidden. See Vanity Mode → Setting up the vanity group.

DNS Zones & Templates

PUQ Web Hosting module WHMCS

Order now | Download | Community

DNS Zones

Infrastructure → DNS Zones lists every logical zone (one row per zone). The Cluster column shows the per‑DNS‑server deploy state, so you can see at a glance that a zone is live on every nameserver. A Redeploy action re‑pushes the zone.

DNS zones

Because zones are logical and replicated, the module gives you an active‑active nameserver cluster — the same zone is served identically by every attached DNS node.

DNS Zone Templates

Infrastructure → DNS Zone Templates holds the record sets used when a new zone is created. You can mark one Default, add more, or Seed from file.

DNS zone templates

Open a template to edit its records. Placeholders are substituted at provisioning time — {domain}, {server_ip}, {mail_server_ip}, {mail_server_hostname}, {ns1}{ns8}, {domainkey} (DKIM), {client_id}, {service_id}, {year}, {unixtime}.

DNS zone template editor

The shipped Default template is a complete, modern web + mail record set:

A record that references an empty placeholder (e.g. {domainkey} when DKIM isn't ready) is simply skipped — so partial state never produces broken records.

Settings

PUQ Web Hosting module WHMCS

Order now | Download | Community

Settings has three pages — General, Cron and Vanity widget. The General page is organised into tabs. The defaults are sensible; tune them as you scale.

General

The General tab itself holds API timeouts and the task retry policy (max attempts, back‑off minutes, batch size per cron run, finished‑task retention):

Settings — General content

The remaining tabs:

Tab Controls
Provisioning Defaults for new users — FTP root path, login shell (nologin for managed hosting), Hestia admin/SSH usernames. Provisioning
DNS Record TTL (default/min/max, max value length) and module‑wide SOA defaults. DNS
SSL Auto‑SSL cadence (fast‑mode count/interval, normal interval, active‑cert interval) and the Let's Encrypt rate‑limit guard. SSL
Mail & Security Webmail / phpMyAdmin URL patterns, DKIM key size, max auto‑reply length, minimum password length. Mail & Security
Logging & Performance Log download size cap, tail line limits, mail‑log filter window, SSH heavy‑bash & apt‑lock timeouts. Logging
Integrations Overridable upstream URLs — FileGator/net2ftp zips, FTP host fallback, PHP repos (Ondrej PPA, Sury), GPG keyserver, IonCube installer. Integrations
Notifications Failure‑ticket toggle (department + priority), client‑area toast/poll durations, analytics lookback windows. Notifications
Maintenance The schema Check & repair tool + the deactivation data‑retention toggle. Maintenance

Cron

The Cron page picks the cron mode (WHMCS vs Standalone), shows the crontab line to install, and lists every scheduled task with its enable/interval/last‑run/status, plus concurrency limits.

Settings — Cron

Vanity widget

Generates the standalone "claim your name" shop widget — see Vanity Mode → The vanity shop widget.

Task Queue & Logs

PUQ Web Hosting module WHMCS

Order now | Download | Community

Everything the module does runs through a task queue processed by the cron runner. The Logs menu exposes both the live queue and a persistent operation history.

Task Queue

Logs → Task Queue is the live worker view: each task's ID, service, target, action (e.g. server.collectStatus, web.addFtp), status, attempts, priority, schedule and error.

Task Queue

Bulk controls let you tidy up: Delete success / error / cancelled, Clean all completed, and Force‑fail stuck (for tasks wedged by an unreachable node).

Operation Log

Logs → Operation Log is a persistent, per‑operation timeline (status collection, deploys, etc.) — useful for auditing what happened and when.

Operation Log

Click a row to open the full detail — the operation, target, step, status and the complete message body:

Operation Log detail

The retry policy (how many times and how fast failed tasks retry) and the optional support ticket on terminal failure are configured in Settings → General / Notifications, and explained in Cron & Automation → Task queue, retries & tickets.

Vanity Widget

PUQ Web Hosting module WHMCS

Order now | Download | Community

Settings → Vanity widget generates a standalone "claim your name" landing page (two files) that you can drop on any marketing domain to sell vanity slots outside the WHMCS portal.

Vanity widget config

In short, you: (1) get/regenerate a shared API key, (2) pick the vanity product, (3) copy the config block into proxy.php, (4) choose the cart behaviour, then download proxy.php + index.html and upload both to each marketing domain's web root.

Vanity widget download

The browser only ever talks to the widget's own proxy.php (which holds the key and caches answers) — the key never reaches the visitor.

The full setup, the buyer's flow and the security model are documented in the dedicated Vanity Mode → The vanity shop widget page.