How to Transfer Joomla to Another Server (Joomla 4, 5 & 6)

Abhilash SahooFounder & CEO, Infyways
Published
Updated
Reading time
6 min read
How to Transfer Joomla to Another Server (Joomla 4, 5 & 6)
On this page 7 sections

Short answer: To transfer Joomla to another server, either (1) back up the site with Akeeba Backup and restore it on the new server with Akeeba Kickstart, which is the easiest and safest way, or (2) move it manually: copy all files, export and import the database, then update configuration.php with the new database details and paths. Test the site before you switch DNS. The steps below work for Joomla 4, 5 and 6.

Before you start: pre-move checklist

  • Check that the new server meets your Joomla version's requirements (PHP version and extensions, MySQL/MariaDB version). Joomla 6 needs PHP 8.3 or later. See Joomla PHP settings.
  • Note the old server's PHP version and key settings (memory_limit, upload_max_filesize, max_input_vars).
  • Create an empty database and a database user on the new server.
  • Lower your DNS TTL (for example to 300 seconds) 24 hours before the switch.
  • Tell editors to pause content changes during the final copy.

Method 1: Akeeba Backup and Kickstart (recommended)

  1. On the old site, install Akeeba Backup and run Backup Now with a full-site profile. Our Joomla backup guide covers the settings.
  2. Download the .jpa archive and kickstart.php (from Akeeba's site).
  3. Upload both files to the empty web root on the new server.
  4. Open https://your-new-server/kickstart.php and extract the archive.
  5. The restoration wizard (ANGIE) starts. Enter the new database host, name, user and password, and check the site paths.
  6. Finish the wizard, then delete the installation folder and kickstart.php when prompted.
  7. Log in to the administrator area and test (see the checklist below).

Method 2: Manual transfer (files + database)

Step 1: Copy the files

Download the whole Joomla folder (including hidden files such as .htaccess) by SFTP, or compress it on the old server and download one archive. Upload it to the new web root and extract it there.

# On the old server (SSH)
tar -czf site.tar.gz -C /path/to/joomla .
# On the new server
tar -xzf site.tar.gz -C /path/to/new/webroot

Step 2: Export and import the database

Use phpMyAdmin (Export → SQL, then Import on the new server) or the command line for larger sites:

mysqldump -u olduser -p olddb > joomla.sql
mysql -u newuser -p newdb < joomla.sql

Step 3: Update configuration.php

Edit configuration.php in the Joomla root and change these values to match the new server:

public $host = 'localhost';
public $user = 'newuser';
public $password = 'newpassword';
public $db = 'newdb';
public $dbprefix = 'abc_';   // only if the prefix changed
public $log_path = '/path/to/new/webroot/administrator/logs';
public $tmp_path = '/path/to/new/webroot/tmp';
public $live_site = '';      // normally empty

Step 4: Fix permissions and .htaccess

Typical permissions are 755 for folders and 644 for files (configuration.php can be 444 once it works). If you use SEF URL rewriting, make sure the new server allows .htaccess overrides (Apache/LiteSpeed) or has the equivalent nginx rules. See our Joomla .htaccess guide.

Switch DNS and go live

  1. Test the new server before DNS changes by adding the domain to your computer's hosts file.
  2. Install the SSL certificate on the new server (or let your host issue one after DNS points there).
  3. Run a final backup/restore or database sync if content changed.
  4. Update the DNS A/AAAA records to the new server IP.
  5. Keep the old server running for a few days in case of rollback.

Post-move checklist

CheckHow
Front end and admin load over HTTPSVisit as a guest and log in to /administrator
System Information shows the right paths and PHP versionSystem → System Information
Folder permissions are writable where neededSystem Information → Folder Permissions
Emails sendSystem → Global Configuration → Server → Send Test Mail
Caches clearedSystem → Clear Cache (plus any server/CDN cache)
SEF URLs, redirects and robots.txt workOpen a few deep links; check Search Console
Scheduled tasks/cron jobs recreatedRecreate backups and any CLI/cron jobs on the new host

Common problems after a Joomla server move

ProblemFix
"Error displaying the error page" / database connection errorCheck the $host, $user, $password, $db and $dbprefix values
Blank page or HTTP 500Check the PHP version and extensions, then the server error log; temporarily set Error Reporting to Maximum
"Unable to write to log/tmp"Fix $log_path and $tmp_path, and the folder permissions
404 on every page except homeEnable .htaccess (or nginx rules) for URL rewriting, or switch URL Rewriting off temporarily
Mixed-content warningsSearch and replace the old http:// URLs in content; set Force HTTPS in Global Configuration

Prefer to have it done for you? Our Joomla support team can handle the move, including staging, the DNS switch and post-move checks.

Frequently asked questions

Akeeba Backup plus Akeeba Kickstart. Make a full backup on the old server, upload the .jpa archive and kickstart.php to the new server, run Kickstart, and enter the new database details in the restoration wizard. It rewrites configuration.php for you.

The database host, user, password and database name, the table prefix if it changed, the log and tmp paths ($log_path and $tmp_path) if the folder path changed, and $live_site if you had set it (usually it should be empty).

Lower the DNS TTL a day before, build and test the site on the new server using a hosts-file entry or a temporary URL, freeze content changes, run a final backup and restore, then switch DNS.

Usually wrong database credentials, an unsupported PHP version on the new host, missing PHP extensions, wrong file permissions, or an .htaccess that the new server does not support. Turn on error reporting temporarily and check the server error log.

No. Moving the files and the database (or using Akeeba Kickstart) keeps your existing installation, extensions and content.

Not if the domain and URLs stay the same and the site works over HTTPS straight away. Check that robots.txt, SEF/URL rewriting and redirects behave the same on the new server.

Share this article

Filed under Joomla

Need help with this?

Need a hand with Joomla?

From upgrades and hacked-site repair to speed, SEO and long-term care, our Joomla team works on the same problems this blog covers.