Here is all our knowledge.
Please help us writing tutorials and documentation. Simply register on our forum, login, go to Knowledge forum and create new topic with some simple question and answer.

Knowledge index:


▶ Paid priority support
     ▶ Click here to reach us in case of an emergency situation

▶ myVesta
     ▶ How to start failed service
     ▶ VestaCP plugins are now FREE
     ▶ How to change default myVesta port after installation
     ▶ Increasing system limits
     ▶ Multiple IPs under the same myVesta system?
     ▶ How to donate to this open-source project
     ▶ How to prevent services timeout
     ▶ How to regenerate disk usage statistics
     ▶ myVesta Logo
     ▶ How to stop and disable some unnecessary services
     ▶ Can I use File Manager in myVesta?
     ▶ myVesta can't login after install
     ▶ Command for restarting myVesta hosting panel
     ▶ Why Debian?
     ▶ Is myVesta safe for professional hosting?
     ▶ Purpose of myVesta secret URL
     ▶ Change admin password from SSH
     ▶ Can not login to admin [blank page]
     ▶ Proper way to change server hostname
     ▶ Error: myVesta update failed
     ▶ Why myVesta supports only Debian
     ▶ Why I made myVesta and not joined HestiaCP
     ▶ How to see, set, change or delete secret-URL of hosting panel

▶ Installation
     ▶ MySQL 8 repo not available for Bookworm yet
     ▶ Debian 11 install error: /sbin/iptables-save: No such file or director
     ▶ Error: Reversed (or previously applied) patch detected! Assume -R? [n]
     ▶ curl not found
     ▶ Recommended disk setup?
     ▶ RAM usage of all services
     ▶ Domain or subdomain for server hostname?
     ▶ myVesta Installation Script Generator
     ▶ What is the easiest way to migrate from VestaCP to myVesta
     ▶ RAM usage of myVesta services
     ▶ Minimum hardware requirements
     ▶ Available options during install

▶ Update
     ▶ How to downgrade myVesta to old design?
     ▶ Upgrade Debian 11 to 12
     ▶ Upgrade Debian 10 to 11
     ▶ Upgrade Debian 8 to 9
     ▶ Upgrade Debian 9 to 10
     ▶ How to properly update system with myVesta
     ▶ dpkg frontend lock

▶ Web
     ▶ Web templates
          ▶ Apache templates
               ▶ The web server config file was rewritten!
               ▶ How to add RewriteRules to Apache configuration files instead in the .htaccess file
               ▶ Why you shouldn't create an alias for the primary domain if you just need redirection
               ▶ How to properly redirect one domain to another
               ▶ Force www or non-www website URL
               ▶ What is PHP-FPM-XX-public template

          ▶ nginx templates
               ▶ Fixing CORS on nginx
               ▶ How can we change the font cross policy?
               ▶ How to make SSL cert file readable for NodeJS
               ▶ Your .env file is available in public - how to prevent this
               ▶ How to make a copy of nodejs-nginx-template with another port
               ▶ How to serve some file types from Apache instead from nginx
               ▶ NodeJS nginx templates
               ▶ Struggled with Moodle (Nginx)
               ▶ Explaination of nginx (proxy) templates
               ▶ WordPress permalinks is not working in Apache-less myVesta
               ▶ How to install rate-limit nginx templates
               ▶ Reverse proxy to another IP
               ▶ Images are not displayed on my site

          ▶ Should we change template to hostname virtualhost?

     ▶ Webmail
          ▶ How to change default webmail URL
          ▶ How to install new Roundcube 1.6.x
          ▶ Webmail and phpmyadmin are not working on my site

     ▶ phpMyAdmin
          ▶ Warning in ./libraries/sql.lib.php#613 count(): Parameter must be an array or an object that implements Countable
          ▶ Can I stop phpmyadmin from being accessed by IP address?
          ▶ What are PHPmyadmin credentials
          ▶ How can I change phpmyadmin URL link on myVesta?
          ▶ Blank page on phpmyadmin
          ▶ How do I set SUPER privilege for a user? phpmyadmin error "1044 - Access denied for user"
          ▶ Webmail and phpmyadmin are not working on my site

     ▶ PHP
          ▶ How to increase the PHP memory_limit
          ▶ Setting up Laravel in myVesta
          ▶ How to install and configure the connection to mssql in php8.2?
          ▶ Drop php.ini variable (disable_functions) to fpm pool.d conf level
          ▶ Error: Zlib error -2 deflating data ((null))
          ▶ How to set short_open_tag=On
          ▶ Running wp-cli with specific PHP version
          ▶ How to check if some site filled all PHP-FPM slots or reached request_terminate_timeout
          ▶ Change PHP timezone for desired domain
          ▶ Widening open_basedir
          ▶ How to to run PHP script every hour (how to add php to cron)
          ▶ Apache-less variant - PHP-FPM Upgrade from PHP 7.3 to PHP 8.1
          ▶ PHP-FPM slow log - what is this and how is it used
          ▶ How to redirect website from HTTP to HTTPS only with PHP
          ▶ How to install ioncube on separate PHP-FPM
          ▶ PHP error log is empty - how to prevent this
          ▶ Inspecting PHP error log - cause of Internal Server Error (5xx) because of limitation in PHP values
          ▶ Required GMP PHP Extension
          ▶ How to restart all PHP-FPM versions at once
          ▶ How to see PHP files that are recently uploaded/modified on some domain
          ▶ How to change the PHP version for PHP scripts running with CRON
          ▶ How to enable pcntl_fork
          ▶ Error from PHP log: Invalid command 'php_flag'
          ▶ PHP 7.x FPM Update ERROR
          ▶ How to change default php-cli version
          ▶ .user.ini
          ▶ Apache-less variant with PHP 7.4 or greater
          ▶ Where php.ini is located
          ▶ How to install multi PHP versions

     ▶ SSL
          ▶ Let's Encrypt certificate does not work on Android 9 and 11
          ▶ Let's Encrypt - DST Root CA X3 expiration (September 2021)
          ▶ Error code: 15 Let's Encrypt Support
          ▶ Error: Let's Encrypt validation status 400
          ▶ Disable TLS1.1 is a good idea ?
          ▶ domain failed 7 times for LetsEncrypt renewing, skipping
          ▶ CloudFlare SSL with self-signed SSL
          ▶ SSL support for SMTP and IMAP for mail.somedomain.com
          ▶ How to install SSL certificate to myVesta, Exim and dovecot daemons

     ▶ How to put HTTP authentication to some site or folder
     ▶ Set Restart-Timeout for Apache2
     ▶ The .htaccess URL rewrite is not functioning properly for images
     ▶ Directory Listings
     ▶ Create Symbolic link using v-move-folder-and-make-symlink command
     ▶ How to point webroot to another folder (instead of public_html)
     ▶ How to list only requests that have been processed by Apache/PHP
     ▶ Correcting ownership and permissions after uploading files as root
     ▶ How to suspend website using SSH
     ▶ If you are making symlink of some web folder
     ▶ NAT or public IP Address
     ▶ How to increase the upload size on myVesta CP

▶ Mail
     ▶ Anti-spam
          ▶ How to install rspamd?
          ▶ Spamhaus & Spamcop in SpamAssassin
          ▶ How to whitelist domain in spamassassin
          ▶ How to add Barracuda RBL check
          ▶ Just add [SPAM] in Subject and not move mails to Spam folder

     ▶ Roundcube
          ▶ Request Check Failed: For your protection, access to this resource is secured against CSRF
          ▶ Roundcube Filters plugin

     ▶ How to sort email accounts by their size
     ▶ How to log who and when deleted some email (dovecot)
     ▶ How to move email folder to another disk
     ▶ Error: 550 127.0.0.1 is _my_ address
     ▶ Resolving dovecot indexing issue due to large inbox
     ▶ Helo name contains a ip address (HELO was $something) and not is valid
     ▶ How to open custom SMTP port in Exim4 on myVesta
     ▶ Warning: fgets(): SSL: Connection reset by peer
     ▶ How to get list of all emails sent from specific email address
     ▶ How to approve email relay
     ▶ How to clean exim4 sending queue
     ▶ The website is infected and continuously sending spam emails - how can it be stopped
     ▶ How to inspect if some website is sending spam emails
     ▶ How to sync/migrate emails using IMAPSync
     ▶ The various types of email issues and how to inspect/fix them
     ▶ How to disable local_delivery and keep domain in MAIL section for domains that is not hosting emails on our server
     ▶ Error: Helo name contains a ip address (HELO was 123.123.123.123) and not is valid / Access denied - Invalid HELO name
     ▶ How to inspect incoming email issues
     ▶ How to block email address or domain
     ▶ exim paniclog /var/log/exim4/paniclog has non-zero size, mail system might be broken.
     ▶ How to ignore email or domain in fail2ban
     ▶ Apply hostname SSL from other domain (and make it hostname)
     ▶ Roundcube Filters plugin
     ▶ How to remove a limit of max 15 recipients per email
     ▶ How to set some domain to send emails from another IP
     ▶ SSL support for SMTP and IMAP for mail.somedomain.com
     ▶ Limit of sent emails

▶ DB
     ▶ How to Prevent MySQL from Crashing Due to OOM Killer
     ▶ Error: PHP Fatal error: Uncaught mysqli_sql_exception: Access denied; you need (at least one of) the SUPER privilege(s)
     ▶ PHP Fatal error: Uncaught Exception: Error: Too many active concurrent transactions
     ▶ Replacing string in custom CMS database
     ▶ Cronjob that checks if MariaDB/MySQL is not killed by OOM Killer
     ▶ Remote access to MySQL ?
     ▶ Debian10: Upgrade MariaDB 10.3 to 10.5
     ▶ Error: Unknown collation while importing SQL dump file
     ▶ Error: Can't init tc log
     ▶ How to export SQL dump file of database via SSH
     ▶ Error: MariaDB is down, and in /var/log/mysql/error.log we see: [ERROR] Can't init tc log
     ▶ How to import SQL dump file to database via SSH
     ▶ Error: Row size too large (> 8126)
     ▶ Error: Specified key was too long; max key length is 767 bytes
     ▶ How to install myVesta with MySQL 8
     ▶ mariadb.conf tweak for 4 / 8 GB RAM
     ▶ mariadb.conf tweak for 32 GB RAM or more
     ▶ 2006 MySQL server has gone away
     ▶ mariadb.conf tweak for 16 GB RAM
     ▶ Database size?

▶ DNS
     ▶ Zone-file for a domain stops working (SRV records format?)
     ▶ Import DNS records from myVesta to CloudFlare
     ▶ How to setup cPanel Zone Editor in case that you move domain and/or emails to myVesta
     ▶ How to find what is the server that hosts emails for some domain
     ▶ How to conduct DNS lookup over domain to find on which server is hosted
     ▶ How to conduct reverse DNS lookup
     ▶ db permission denied
     ▶ Different nameserver IPs and proper setup
     ▶ Name servers software versions are exposed
     ▶ PTR record?
     ▶ Where is DNS zone file
     ▶ DNS cluster is not working

▶ FTP
     ▶ How to install FTP?
     ▶ Chroot SFTP? How to limit users only to their home folder and sub folder
     ▶ FTP over TLS

▶ Backup
     ▶ Add multiple emails to receive backup notifications
     ▶ How to restore database backup from /baze folder
     ▶ config file for backups
     ▶ How to run server backup in anytime
     ▶ Backups consumes double the size of the account?
     ▶ How to allow backup process only during the night?
     ▶ Backup Vesta to Backblaze B2
     ▶ Limiting number of remote backups
     ▶ How to make remote backup?
     ▶ How to turn off email notification of Full Backup Report

▶ Softaculous
     ▶ How to install Softaculous

▶ ClamAV
     ▶ malware scan
     ▶ How to install ClamAV on MyVesta
     ▶ clamav-daemon service failed

▶ Firewall
     ▶ How to allow HTTP and HTTPS traffic coming ONLY from CloudFlare
     ▶ Configure fail2ban for phpmyadmin and roundcube
     ▶ Configure fail2ban for proftpd
     ▶ How to relax fail2ban rules
     ▶ How to check if some user has wrong password in mail client application
     ▶ How to fastly add a new firewall rule through ssh
     ▶ It is possible somehow to add mass ip list to banned list
     ▶ How to whitelist some IP in fail2ban
     ▶ How to check if fail2ban banned some IP
     ▶ Custom firewall script [SOLVED]
     ▶ How to ignore email or domain in fail2ban
     ▶ Firewall is blocking my IP, blocking emails receiving
     ▶ How to setup csf firewall?
     ▶ Iptables always shows Uptime: 0 minutes

▶ Bash
     ▶ CLI
          ▶ How to list all website domains and subdomains on server
          ▶ CLI Commands

     ▶ How to enable SSH for a specific user account using a public key instead of a password
     ▶ Script for obtaining an overview of all users and their corresponding domains, along with DNS data
     ▶ Allow password-based SSH login for root
     ▶ How to allow SSH for your myVesta admin account
     ▶ How to suspend website using SSH
     ▶ Moving domains and databases from one account to another
     ▶ How to replace old domain to new domain in WordPress database
     ▶ How to suspend only domain (WEB) without suspending MAIL and DNS services
     ▶ How to find on which user account is some domain hosted
     ▶ Automatic WordPress installing (v-install-wordpress)
     ▶ Cloning website, making staging copy (v-clone-website)
     ▶ How to migrate WordPress to https (v-migrate-site-to-https)
     ▶ v- commands not found

▶ API
     ▶ Why API is not working?

▶ Optimizations
     ▶ Need Optimization suggestions for a new server

▶ Migrations
     ▶ How to manually migrate a WordPress site to myVesta Hosting Panel
     ▶ Complete Guide: Migrating from another hosting panel to myVesta
     ▶ How to copy/move mails from cPanel to myVesta
     ▶ Proper way to change server IP
     ▶ How to import cPanel backup to myVesta server
     ▶ How to move accounts from one (my)Vesta server to another myVesta server

▶ Other
     ▶ Third-party software
          ▶ WordPress
               ▶ WordPress + WebP (WP Smush & Converter for Media – Optimize images | Convert WebP & AVIF)
               ▶ How to use v-lock-wordpress
               ▶ How to install and activate Redis for WordPress
               ▶ How to setup blazing fast WordPress using myVesta + rocket-nginx + WP Rocket caching plugin
               ▶ How to edit or create admin account on WordPress website using WP-CLI
               ▶ Guide for configuring WordPress Multisite
               ▶ WordPress - fast installation
               ▶ Making WordPress faster using memcached and W3TC caching plugin

          ▶ How to install pm2 on Debian
          ▶ How to install and configure Node.js on Debian
          ▶ WHMCS is not working

     ▶ Virtualization
          ▶ How to install Docker on Debian

     ▶ Elastic Search: failed to create query: field expansion matches too many fields, limit: 1024, got: 1399
     ▶ rrd script for UPS

▶ Linux tutorials
     ▶ Security
          ▶ Spotting Infected Domains: Identifying Sites Sending Flood/DOS Requests
          ▶ You suspect a website is under attack or infected and your server is slowing down: How to inspect the problem
          ▶ How to inspect myVesta login password changes for particular user accounts
          ▶ How to spot http flood on server
          ▶ How to see PHP files that are recently uploaded/modified on some domain

     ▶ Linux services
          ▶ How to install Java on Debian
          ▶ How to install memcached on Debian
          ▶ How to install supervisor on Debian
          ▶ How to install ElasticSearch 7 and 8 on Debian
          ▶ How to install Redis on Debian

     ▶ How to assign a static IP to a Linux machine on a local network
     ▶ Initial Server Setup (iss.sh) by Amadex.com
     ▶ How to set up a swap space on an existing Debian server
     ▶ How to change TimeoutStartSec on Debian
     ▶ [RAID FAIL] How to restore RAID for certain disk on Linux server
     ▶ How to format log output to make it more readable
     ▶ How to find a folder which consumes a large amount of memory
     ▶ How to check the application listening ports
     ▶ How to fast check some archived log file
     ▶ How to make custom logrotate script
     ▶ How to set timezone on your server
     ▶ cgroups and (my)Vesta
     ▶ How to Install Composer
     ▶ How to add Login Alert Notification Debian 10/11