Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,075 of 9,075 pages
About the help in other languages
All help pages

Runbook: Velocity will not start

What to do when the Exponential Velocity engine does not come up or does not answer: read its status and console log, then the usual causes (port in use, missing package or PHP extension, engine archive, certificate…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/hosting/runbooks/velocity-will-not-start.md

On this page

Runbook: Velocity will not start

For on-call staff when the Exponential Velocity engine of a site does not start, or starts and does not answer. The messages and fixes come from 12.11 Velocity and the web server.

Contents

  1. First look
  2. Causes and fixes
  3. A restart that hangs
  4. After the incident

First look

php bin/php/console exp:velocity status --allow-root-user

status reports "running" only when the server answers a request; otherwise "not answering", with the problems it finds, and exit status 1. Then read what the server process printed:

tail -n 50 var/vc/qbix/run/console.log

var/vc/qbix/run/console.log ([ServerSettings] LogFile) "holds the start-up lines and the reason" when a qbix start does not come up. The server's error log is in var/vc/qbix/log/ (<siteaccess>-error.log).

Also check which engine the site is set to: [ServerSettings] Engine in settings/velocity.ini (override in settings/override/velocity.ini.append.php). The shipped default is php, PHP's built-in server for development; production uses qbix:

php bin/php/console exp:velocity config get ServerSettings Engine --allow-root-user

Causes and fixes

Message or symptomCauseFix
velocity: no server script at ...the qbix engine needs the Velocity package, which is not installedrun composer install (the package is required), or install se7enxweb/exponential-velocity ~0.0.4.57 (PHP 8.0 or later), as 12.11 describes
velocity: already runninga server of that engine runs alreadyexp:velocity status; restart to apply changes
velocity: port ... is already in use by another processanother program or engine holds the portstop the other engine (exp:velocity stop --engine=...), or change Port/HTTPSPort with exp:velocity config set
velocity: EnginePhar names an archive that does not exist[ServerSettings] EnginePhar points at an archive that was never built or was removedphp bin/php/console exp:phar build, or exp:velocity config set ServerSettings EnginePhar disabled
ports 80 and 443 cannot be boundports below 1024 need rootstart Velocity as root (the workers drop to [ServerSettings] User), or use ports above 1024 behind a proxy
a missing PHP extension in console.logthe command-line PHP lacks sockets, pcntl or opensslphp bin/php/console exp:velocity ext check --allow-root-user shows what is missing, ext install-hint <ext> the install command
the machine's PHP is 8.0 and Composer refuses the enginean engine release older than 0.0.4.54, which needed PHP 8.1require ~0.0.4.54 or later, which runs on 8.0 (Choosing a web server)
HTTPS shows a self-signed certificatethe configured certificate is missing, expired or does not match its keyexp:velocity ssl show; fix [HTTPSSettings] Certificate and Key (Certificate expiry)
workers cannot writeworkers run as [ServerSettings] User and Groupset them, or fix ownership; workers never run as root unless AllowRootWorkers=enabled (12.3)
it stopped and the watchdog does not start itexp:velocity stop or kill leaves stopped.json; the watchdog then leaves it alone on purposeexp:velocity start; exp:velocity watchdog status and var/log/velocity-watchdog.log say what the watchdog did

To see the exact command line the server would run, without starting it:

php bin/php/console exp:velocity command --allow-root-user

A restart that hangs

exp:velocity restart "succeeds only when a new parent answers" and "runs detached ... so a caller killed half-way does not leave the server down". If a restart does not finish:

  1. exp:velocity status (is a new parent answering?).
  2. If a worker is wedged: php bin/php/console exp:velocity kill --allow-root-user ("stop without asking, for a wedged worker"), then exp:velocity start.
  3. Check with status again, and with a request to the site.

Tip

While the engine is down, the same installation can be served by Apache or nginx with PHP-FPM if that is set up on the machine; see Velocity beside Apache or nginx.

After the incident

  • To do: Clear Velocity's response cache after the start: php bin/php/console exp:velocity cache clear --apply --allow-root-user.
  • To do: If the cause was a crash, consider the watchdog (exp:velocity watchdog install, as root) (Velocity for hosts).
  • To do: If the cause was a change (a deploy, a settings change), note it and fix the procedure (Deploying changes).

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x