For the complete documentation index, see llms.txt. This page is also available as Markdown.

Environment settings

UXWizz can read selected configuration values from server environment variables. This is useful for administrators who want to keep credentials outside application files, or who want to disable specific platform capabilities for security and compliance reasons.

All feature flags are enabled by default. Environment variables are only needed when you want to override the default behavior.

How UXWizz Reads Environment Variables

UXWizz reads environment variables from PHP using the standard environment sources available on the server:

  • getenv()

  • $_ENV

  • $_SERVER

This makes the feature compatible with common PHP deployments, including Apache, Nginx with PHP-FPM, Docker, Linux services, Windows/WAMP, and other PHP 8+ environments.

Only the exact value 1 enables a disable flag. If a variable is missing, empty, or set to another value, UXWizz keeps the default behavior.

Setting Environment Variables

The exact method depends on your hosting environment.

Linux / Ubuntu

1. Add global env variables to /etc/environment

sudo nano /etc/environment

Define your desired variables in this file, available env variables (replace with your own values):

Apache 1. Link environment variables to Apache via Systemd

Run sudo systemctl edit apache2.

2. Pass them in your VirtualHost (or .htaccess) and Restart

Add this line inside your Apache virtual host file, usually in /etc/apache2/sites-available/

If your dashboard is served over HTTPS, this is usually the *:443 virtual host. On Let's Encrypt setups, that is often the *-le-ssl.conf file. If the *:80 virtual host only redirects to HTTPS, it usually does not need these variables. If UXWizz is also available over plain HTTP, add the same variables to both the *:80 and *:443 virtual hosts.

Then restart Apache:

PHP-FPM

If your server uses PHP-FPM, add these lines to your PHP-FPM pool config, for example /etc/php/8.3/fpm/pool.d/www.conf:

Then restart PHP-FPM:

Replace 8.3 with your installed PHP version.

Docker

Pass variables to the container:

Windows / WAMP

Set environment variables in Windows, then restart WAMP/Apache so PHP receives the new values.

PowerShell example:

Feature Disable Flags

Disable AI Chat

Disables the AI chat question workflow.

When this flag is enabled:

  • UXWizz will not send AI chat requests to LLM providers.

  • Users can still open the AI chat screen.

  • Users can still configure AI provider settings, API keys, model choices, and chat history preferences.

  • When a user tries to ask a question, the server rejects the request and shows that AI chat is disabled by the administrator.

Use this when you want a fully local UXWizz installation that cannot send chat prompts to external AI providers.

Disable Self-Update

Disables the built-in automatic updater.

When this flag is enabled:

  • UXWizz can still check whether a new version is available.

  • UXWizz can still validate the license and support status.

  • The update page still shows version information.

  • The application will not download, extract, overwrite, or delete files through the self-updater.

  • The "Update now" action is disabled in the dashboard.

Use this when updates should be handled by your deployment pipeline, package manager, container image, or manual administrative process.

Disable Scheduled Task Execution

Disables execution of scheduled tasks.

When this flag is enabled:

  • Admins can still create and edit scheduled task definitions.

  • Admins can still view scheduled task history and settings.

  • Manual task runs from the dashboard are blocked.

  • Automatic task runs from cron or WP-Cron are blocked.

  • Existing schedules are preserved, but they will not execute until the flag is removed.

Use this when you want to prevent UXWizz from running maintenance/reporting jobs, while still allowing administrators to review or prepare task configuration.

Database Credentials From Environment Variables

Standalone UXWizz installations can load the main database connection from environment variables.

Supported variables:

UXWizz only uses these variables when the matching value in server/dbconfig.php is empty.

For example:

With the values above empty, UXWizz loads the database connection from:

  • UXWIZZ_DB_HOST

  • UXWIZZ_DB_USER

  • UXWIZZ_DB_PASSWORD

  • UXWIZZ_DB_NAME

If a value is already hard-coded in server/dbconfig.php, the hard-coded value takes priority.

Updates and Env-Based Database Credentials

When UXWizz updates itself, it preserves database credentials in server/dbconfig.php.

If a database value was loaded from an environment variable, UXWizz keeps the matching dbconfig.php field empty during the update. This prevents environment-provided secrets from being copied into the application file.

WordPress Installations

The WordPress version of UXWizz uses the WordPress database configuration constants from wp-config.php.

The UXWIZZ_DB_HOST, UXWIZZ_DB_NAME, UXWIZZ_DB_USER, and UXWIZZ_DB_PASSWORD variables are only used by standalone UXWizz installations, not by the WordPress overwrite package.

Security Notes

  • Do not expose environment variables in public PHP info pages, debug output, logs, or screenshots.

  • Prefer environment variables or secret managers for production database credentials.

  • Restart the web server or PHP process after changing environment variables.

  • Feature disable flags are enforced server-side. Dashboard UI messages are informational, but the security boundary is the backend guard.

  • Environment variables should be set by the server administrator, deployment system, hosting panel, or container runtime.

Reference

Variable
Default
Description

UXWIZZ_DISABLE_AI_CHAT

unset

Set to 1 to prevent AI chat requests from being sent to LLM providers.

UXWIZZ_DISABLE_SELFUPDATE

unset

Set to 1 to disable the built-in file updater.

UXWIZZ_DISABLE_SCHEDULED_TASKS_EXECUTION

unset

Set to 1 to block manual and automatic scheduled task execution.

UXWIZZ_DB_HOST

unset

Main database host, used only when $host is empty in standalone server/dbconfig.php.

UXWIZZ_DB_NAME

unset

Main database name, used only when $db_name is empty in standalone server/dbconfig.php.

UXWIZZ_DB_USER

unset

Main database username, used only when $username is empty in standalone server/dbconfig.php.

UXWIZZ_DB_PASSWORD

unset

Main database password, used only when $password is empty in standalone server/dbconfig.php.

UXWIZZ_MYSQL_SSL_CA_PATH

unset

Path to an SSL CA certificate file for MySQL connections, used only when $sslCaPath is empty in standalone server/dbconfig.php. Example value: /var/www/html/certs/global-bundle.pem

Last updated