.env, Artisan & Terminal
Edit the .env file directly in the browser under Sites → .env. Use Ctrl/Cmd+S to save.
Fresh Server Install
The recommended way to bootstrap a brand new Herne server is the unified installer:
curl -fsSL https://raw.githubusercontent.com/fklavyenet/herne/main/install.sh | sudo bash
It installs the core stack, writes the panel environment, creates the first admin, installs sudoers rules, configures nginx, and can optionally install the mail stack too.
.env Editor
Go to Sites → .env to edit the environment file for your application directly in the browser. The editor reads and writes {deploy_path}/.env.
- Use
Ctrl+S(orCmd+Son macOS) to save - The file is written atomically and permissions are set to
640 - Click Load from .env.example to pre-fill from the example file if it exists
- Click Apply Redis defaults to insert Herne's Redis-ready cache, session, queue, and connection values
After editing <code>.env</code>, run <code>optimize:clear</code> or rebuild the relevant caches from the Artisan runner so the app reads the new values.
Artisan Runner
Run any php artisan command from Sites → Artisan. Shell metacharacters are stripped for safety. Go to Sites → Artisan and type a command without the php artisan prefix:
migrate --force
queue:restart
storage:link
key:generate
Shell metacharacters (&, |, ;, `, $(...), >, <) are stripped for security. Output is displayed inline.
The page is especially useful for common follow-up actions such as key:generate, storage:link, migrations, and cache rebuilds after editing .env.
APP_KEY Safety
Laravel apps need a non-empty APP_KEY. Quick Install protects and generates it as part of the install flow. For manually deployed apps, run:
key:generate
optimize:clear
Do not rotate APP_KEY on an existing production app unless you understand the impact on encrypted cookies, sessions, and stored encrypted data.
Canonical Domain Migration Command
Admins can promote a temporary site domain to the real production domain with the canonical migration command. Run a dry run first:
herne:sites:canonicalize-domain fklavye.webblocksui.com fklavye.net --www-alias --move-files --backup --dry-run
Apply only after reviewing the plan:
herne:sites:canonicalize-domain fklavye.webblocksui.com fklavye.net --www-alias --move-files --backup --force
The command updates the site domain, slug, aliases, app metadata, environment URL/name, active path, retired backup path, and Nginx config. It must not leave the old domain as an alias or server_name.
Web Terminal
The Web Terminal (Sites → Terminal) runs commands as an isolated user in the site's web_root project directory. Go to Sites → Terminal. Commands run as an isolated shell user (shell_domainslug) inside the site's web_root project directory.
Security Restrictions
Output redirections (>, >>), command substitution ($(), backticks), and piping are blocked in the terminal. The following are blocked:
- Output redirection:
>,>> - Command substitution:
$(...), backticks - Pipe:
|
The Web Terminal has a 30-second timeout per command. Long-running commands (e.g. <code>composer install</code> on first run) may time out — use <strong>Deploy</strong> with the Composer step enabled instead.
Server Logs
Open Sites → Logs → Server Logs to inspect the latest web server output for the current site.
- Switch between Nginx access, Nginx error, and PHP-FPM logs
- The newest 200 lines are shown first
- Use Refresh to reload the live file
- Use Clear to truncate the selected log file when supported by your server permissions
- The PHP-FPM log tab is restricted to admin users