Discovering that a long-running Joomla website was deleted is stressful, especially when all you have is a backup from 2022 and your host or installer refuses to install Joomla 3.x. This guide gives practical, step-by-step options to minimize further loss, inspect your backup, restore the site manually or locally for testing, handle compatibility problems, and plan a safe upgrade. Follow the checklists and warnings carefully—mistakes when editing databases, configuration files, or server settings can break a site.
Immediate steps after discovering the site was deleted
Before attempting any restore, take these immediate actions to preserve evidence and collect everything you need.
Essential actions
- Stop making changes to any related hosting account, DNS records, or backups that could overwrite remaining data.
- Gather all copies of the backup you have (archives, SQL dumps, configuration.php, exported media folders).
- Contact the old host immediately. Request retrieval of the deleted site's filesystem and database dumps, plus server logs and backup retention dates.
- Confirm domain control at the registrar so you can update DNS later or create staging domains.
- Note credentials (FTP/SFTP, cPanel, database access) if available, and keep them secure. Do not paste credentials into public requests for help.
Contact the old host: request a retrieval window and logs
When you contact the host, include a concise request and proof of ownership. Ask for:
- Account-level backups and retention windows.
- Filesystem archive for the deleted site (public_html or document root).
- Database dumps or a direct DB export.
- Server error logs from the deletion window.
Quick checklist: what to gather now
- Backup archive file(s) and size (e.g., site-backup-2022.zip or site.jpa).
- configuration.php from the site root (keep private).
- SQL dump file (site-database.sql) or evidence it is missing.
- FTP/SFTP/cPanel credentials (or note that you do not have them).
- Domain registrar access details for DNS changes.
Warning: Always share credentials only via secure channels with trusted parties. Publicly posting login details risks account takeover.
Understand and inspect your Joomla backup (what to look for)
Before attempting a restore, verify the backup contains everything required for a working Joomla site.
Confirm backup contents: files, configuration.php and SQL dump
- A complete backup normally contains the site files (root folder with index.php), a configuration.php file, and a database SQL dump.
- If the backup is an Akeeba package (.jpa / .jps), you will need Akeeba Kickstart or to extract it locally to access the SQL file.
- Open configuration.php locally to view variables like the DB name, DB user, DB host and table prefix—but keep passwords private.
- Look for media folders (images, uploads) and extension folders: components, modules, plugins, templates.
Recognize backup formats and how to handle them
Common formats include ZIP, TAR.GZ and Akeeba packages. Extract the archive locally (never execute PHP from an unknown archive) and locate the SQL file. A missing or tiny SQL file indicates an incomplete backup—contact the old host immediately if the DB dump is missing.
Practical examples
- Example: a 400MB zip containing folders: configuration.php, index.php, components/, modules/, plugins/, templates/, images/, and a 20MB site-database.sql file.
- Example: an Akeeba .jpa file that must be processed with Akeeba Kickstart or extracted on a local machine to access its contents.
Warning: Do not upload configuration.php or SQL dumps to a public or production server before sanitizing credentials and ensuring the environment is safe.
Option A — Quick manual restore to new hosting (step-by-step)
If your host blocks legacy Joomla installs through Softaculous or other installers, you can often restore the backup manually. This method assumes you have a working hosting account with file and database access (cPanel, FTP, phpMyAdmin or SSH).
Checklist before you begin
- Confirm the host allows you to create databases and upload files.
- Know the PHP and MySQL/MariaDB versions available—older Joomla 3.10 has specific requirements (verify these against official Joomla docs).
- Have FTP/SFTP or File Manager access and phpMyAdmin or SSH access for large SQL imports.
- Make a copy of the backup archive on your local machine before any edits.
Step-by-step manual restore
- Upload files: Use File Manager to upload a zip to the target document root (public_html) and extract it, or upload files via FTP. If unsure, extract locally and upload the site root contents into public_html.
- Create a database and user in cPanel (or your control panel) and assign full privileges to the user.
- Import the SQL dump: Use phpMyAdmin if the file is small. For large SQL files, ask the host for SSH or use a command like mysql -u user -p database < dump.sql if SSH is available (ask host about command availability).
- Update configuration.php: edit DB credentials (host, user, password, database) and confirm the table prefix matches the imported SQL. Also check log and tmp paths if absolute paths are present.
- Set permissions: directories 755 and files 644 are typical; set configuration.php more restrictive (for example 640 or 600) if your host supports it.
- Test the site using a hosts-file override, a temporary domain, or a staging URL provided by the host before changing public DNS.
Using File Manager vs FTP
File Manager is convenient for uploading a single archive and extracting it. FTP is better for large sites or when you need resume support. Be careful to extract into the correct path to avoid nesting the site under an extra folder.
Importing the database (practical checklist)
- Create the DB with a sensible collation (confirm recommended collation for Joomla 3.10 with official docs).
- If phpMyAdmin cannot import a large file, request host support, use SSH to import, or split the SQL file into smaller parts.
- If the table prefix in configuration.php differs from the SQL, either edit configuration.php to match the prefix or edit the SQL before importing. Document your changes.
Warnings: Do not leave installer or leftover scripts in the webroot. Running Joomla 3.10 in production without planning an upgrade carries security risks—limit public access until you have a tested upgrade plan.
Option B — Restore locally for testing and troubleshooting
Restoring the site locally is the safest way to debug incompatibilities and prepare an upgrade without exposing an older Joomla installation to the internet.
Benefits of a local restore
- Safe environment to enable error reporting and debug PHP errors without risk to live users.
- Ability to test template and extension changes, and to rehearse the upgrade path.
- Confidence that a later migration to production will succeed.
Setting up a local environment
- Choose a stack: XAMPP, MAMP, WAMP, Local (by Flywheel), or Docker. Try to match PHP/MySQL versions to the original host as closely as possible (verify exact requirements).
- Copy site files into the local webroot (for XAMPP this could be xampp/htdocs/your-site).
- Create a local database and import the SQL dump via phpMyAdmin or the MySQL command line.
- Edit configuration.php to use local DB credentials (host typically 'localhost').
- If the site relies on the original domain, add a hosts-file entry or create a local virtual host to replicate behavior that depends on the domain.
Common local troubleshooting
- White screen (blank page): enable PHP error display or check error logs, then address fatal errors.
- Missing PHP extensions: enable required extensions in php.ini (for example, mbstring). Verify which extensions are needed for Joomla 3.10 with official docs.
- Template problems: switch to a core template by changing the default in the database if the site fails to render.
Warning: A local environment may not exactly match your host. Use local success as a strong indicator, but re-check on a staging server that mirrors production before making the site public.
Handling compatibility: PHP, database and extensions
Compatibility issues are the most common source of problems when restoring an old Joomla site. Address PHP version mismatches, database settings, and third-party extensions carefully.
Detecting compatibility problems
- Look for PHP fatal errors in the logs indicating missing functions or deprecated features.
- Broken admin access or frontend errors often point to incompatible extensions or templates.
- Search for extension folders referenced in error messages (components/com_example, plugins/system/xyz).
Temporary troubleshooting steps
- Disable problematic extensions by renaming their folders in /plugins, /modules or /components to a .disabled suffix. Document each change so you can restore or properly uninstall later.
- Switch to a Joomla core template by updating the template entry in the database (note: table names include the table prefix—verify exact schema before running SQL).
- If the host can enable a legacy PHP version temporarily, request that for the migration window or run the site on a VPS/container where you control PHP.
Warning: Renaming folders disables code execution but leaves database entries intact. Plan to uninstall or re-enable extensions properly once you have a migration strategy. Running outdated extensions publicly increases security risk—limit exposure.
Upgrade strategy: from Joomla 3.10 to a supported version (overview)
Once the site is restored and stable in a test environment, plan a careful upgrade. Major core upgrades can alter the database schema and break extensions if done without preparation.
Principles and sequence
- Always work on a copy (local or staging). Never upgrade production without a tested rollback plan.
- Audit all extensions and templates for compatibility. Update or replace third-party components first where possible.
- Perform the core upgrade in a controlled environment, then test thoroughly (front-end, back-end, forms, payment flow, search).
When to get professional help
If the site uses many custom extensions, custom code, or mission-critical functionality, hiring an experienced Joomla developer or agency to handle the upgrade can reduce risk and save time.
Warning: Confirm the official upgrade path and recommended steps from Joomla documentation before executing an upgrade. Database schema changes during upgrades may be irreversible without a tested backup and rollback.
If the host or installer blocks legacy versions: practical workarounds
If Softaculous or a host policy prevents installing Joomla 3, these alternatives usually work.
Workarounds
- Manual restore: Upload files and import the DB manually as outlined earlier; installers are only a convenience.
- Ask for a temporary PHP version: Many hosts offer a PHP selector or a temporary legacy PHP for migration—request a limited-time window.
- Use a VPS or managed VPS: You control the stack and can run the older PHP/Joomla configuration temporarily for migration.
- Docker or local container: Run an environment matching the old site locally or on a cloud instance, then migrate to production after upgrading.
- Change hosts: If the host refuses reasonable support for migration, moving to a Joomla-friendly host can be the most practical long-term solution.
What to ask your host if things fail
- Can you provide a server-level backup export (filesystem and DB) for a short period?
- Can they enable an older PHP version or provide a staging account with the required PHP/MySQL versions?
- Can they import a large SQL file via SSH or provide temporary SSH access for migration?
Warning: If you deploy a VPS or container to host a legacy Joomla instance, secure it promptly and do not keep the legacy environment public longer than necessary.
Testing, going live and DNS cutover checklist
Before changing DNS, run a final set of smoke tests in staging and prepare a planned cutover window.
Pre-launch checklist
- Admin login successful and user accounts intact.
- Test key front-end pages, menus, forms and file downloads.
- Check media and uploads are present and accessible.
- Verify SSL certificate plans (reissue Let's Encrypt or install paid certificate after DNS change).
- Clear Joomla caches and disable debug settings before going live.
DNS cutover steps
- Reduce TTL 24–48 hours before the switch if possible.
- Schedule the cutover during a low-traffic period and announce planned maintenance if needed.
- Update A records to point to the new server and monitor propagation.
- Reissue or install SSL certificates for the new server after DNS update.
Post-launch monitoring
- Monitor server error logs, uptime and site behavior for at least 24–72 hours.
- Ask users to report issues, and be ready to roll back DNS quickly if a critical problem appears.
Warning: Do not forget to regenerate SSL certificates after moving servers. Purge caches to avoid serving stale content.
Long-term prevention: backups, monitoring and hosting choices
To avoid this situation going forward, implement robust backup and hosting practices.
Backup strategy
- Adopt a 3-2-1 strategy: three copies of backups, stored in two different formats/locations, with one copy off-site.
- Use scheduled database exports plus periodic full filesystem backups. Store backups on cloud storage (S3, Google Drive) and locally.
- Test restores regularly—backups are only useful if you can restore them.
Hosting and monitoring
- Choose a host that supports multiple PHP versions, staging environments, SSH access, and regular exports.
- Use uptime and certificate expiry monitoring to alert you before renewals or outages affect the site.
- Keep an inventory document listing installed extensions, templates, and custom code with versions and sources.
Warning: Relying solely on host backups can fail in billing or ownership disputes. Maintain your own off-site backups and verify restore procedures periodically.
FAQ
Can I restore a 2022 Joomla 3.10 backup even if Softaculous won't let me install Joomla 3?
Usually yes. Manual restore is commonly possible: upload the site files, create a new database, import the SQL dump, update configuration.php and test on a staging or local environment. If you lack access or the SQL is too large, ask your host for temporary support or use a VPS/local environment.
Should I run Joomla 3.10 on live hosting or upgrade first?
Restore the site in a private staging or local environment first. If you need it public temporarily, limit exposure, restrict access and plan a fast upgrade to a supported version. Verify current support and security guidance from official Joomla documentation before deciding.
What if the backup is incomplete or missing the database?
Missing configuration.php or SQL dump indicates an incomplete backup. Immediately contact the old host for server backups. Check archived copies (Wayback Machine) and local or developer copies. If the DB is irretrievable, content may need partial rebuilding from cached copies or archives.
How do I handle incompatible third-party extensions after restore?
Temporarily disable non-core extensions by renaming their folders or via the database, switch to a core template, then update or replace extensions in a staging environment. For essential functionality, find modern replacements and plan content or data migration if necessary.
Conclusion
Recovering a long-running Joomla site after a host deletion is challenging but usually possible. In short: gather evidence and copies, inspect the backup for files and the SQL dump, restore manually to new hosting or locally for testing, address compatibility issues carefully, and plan a staged upgrade to a supported Joomla version. Finally, adopt a stronger backup and hosting strategy to prevent recurrence. When in doubt, or when custom code or critical extensions are involved, consider hiring an experienced Joomla developer to assist with migration and upgrades.
Note: Verify version-specific system requirements, exact configuration.php variables, and upgrade paths against the official Joomla documentation before making production changes.



Add comment