Documentation Index
Fetch the complete documentation index at: https://docs.startmyvpn.com/llms.txt
Use this file to discover all available pages before exploring further.
Server requirements
| Requirement | Minimum | Recommended |
|---|---|---|
| PHP | 8.4 | 8.4 |
| MySQL | 8.0 | 8.0+ |
| Web server | Nginx or Apache | Nginx |
| RAM | 1 GB | 2 GB+ |
| Storage | 10 GB | 20 GB+ |
| OS | Ubuntu 22.04 | Ubuntu 24.04 |
StartMyVPN is built against PHP 8.4. Older PHP versions (8.2, 8.3) are not supported — the application will not load.
PHP extensions
The following PHP extensions must be enabled:BCMathCtypecURLDOMFileinfoJSONMbstringOpenSSLPDO+pdo_mysqlTokenizerXMLZip
IonCube Loader (required)
StartMyVPN ships with core business logic encoded using IonCube. You must install the IonCube Loader v15 or newer before the application will run. Earlier loader versions (v14 and below) cannot decode PHP 8.4 files and will fail withcannot be decoded by this version of the ionCube Loader.
1. Download the loader
Download the latest IonCube Loader from ioncube.com/loaders.php. Select the package matching your OS and architecture.2. Find your PHP extension directory
3. Copy the loader
4. Add to php.ini
Find your activephp.ini:
php.ini, before any other extension= or zend_extension= lines:
5. Restart PHP-FPM
6. Verify the loader is active
php -v still shows no ionCube line, the zend_extension path is wrong or the loader file is the wrong architecture for your PHP build.
Supported PHP version
| PHP Version | Loader filename |
|---|---|
| 8.4 | ioncube_loader_lin_8.4.so |
Required software
- Composer 2.x — PHP dependency manager
- Node.js 20+ and npm — front-end assets are compiled on each install so your branding, theme, and per-client customizations are baked into the bundle
- unzip — to extract the release archive
Queue & scheduler
StartMyVPN relies on Laravel queues for background jobs (WireGuard config generation, server provisioning, etc.) and the Laravel scheduler for periodic tasks. You need either:- Supervisor to keep queue workers running (recommended for production)
- OR a cron job that runs the scheduler every minute (minimum requirement)
Cloud provider accounts
To deploy VPN servers from within the admin dashboard, you need at least one of:- A DigitalOcean account with an API token (Personal Access Token with write access)
- A Vultr account with an API key
Payment gateway accounts
At least one payment gateway is required to accept payments:- Stripe — credit/debit card payments
- PayPal — PayPal checkout and recurring subscriptions
- CryptAPI — cryptocurrency payments (Bitcoin, Ethereum, etc.)