Fixing "No Language Defined" in VestaCP — Missing Language Files
19.02.2026
Check If Language Files Are Missing
Run this command to check the language folder in VestaCP:
For related VestaCP topics in this cluster, see Missing Language Files (variant) and Not Recognizing Language.
ls -lah /usr/local/vesta/web/lang/
Expected output: List of language files like:
en.php ru.php es.php fr.php ...
If the folder is empty, proceed to Step 2.
Restore Missing Language Files
If the language files are missing or deleted, reinstall them.
Download the VestaCP Language Pack
cd /usr/local/vesta/web/
git clone https://github.com/serghey-rodin/vesta.git vesta-lang
Move the Language Files
cp -r vesta-lang/web/lang/ /usr/local/vesta/web/
Remove Unnecessary Files
rm -rf vesta-lang
Set the Default Language in VestaCP
If the language files exist but are not loading, set the correct language manually.
Edit VestaCP Configuration
nano /usr/local/vesta/conf/vesta.conf
Add or update this line:
LANGUAGE='en'
Replace 'en' with your preferred language (ru, es, fr, etc.).
Restart VestaCP:
systemctl restart vesta
Fix Permissions for Language Files
If the language files exist but still don't work, fix their permissions.
Run:
chown -R root:root /usr/local/vesta/web/lang/
chmod -R 755 /usr/local/vesta/web/lang/
Restart VestaCP after fixing permissions:
systemctl restart vesta
Summary of Fixes
| Issue | Fix |
|---|---|
| Language files missing | Restore using git clone |
| Language setting incorrect | Set LANGUAGE='en' in vesta.conf |
| File permissions incorrect | Run chown -R root:root /usr/local/vesta/web/lang/ |
| VestaCP still not loading languages | Restart with systemctl restart vesta |
Now your VestaCP should display correctly!


