How to Install Joomla Manually: A Practical cPanel Guide
Install Joomla manually on cPanel hosting by preparing the domain, uploading the package, creating a database, running the web installer, and completing essential security checks.
If you want to know how to install Joomla manually, you need four things: a domain connected to hosting, a Joomla package, a database, and access to your hosting control panel. The process is straightforward once those pieces are ready. You upload the files, create a database and user, open the web installer, then complete the first security and configuration checks.
This guide uses a typical cPanel hosting workflow. Menu names can differ between hosts, but the sequence is the same. It also explains what to check when the installer cannot connect to the database, clean URLs return a 404 error, or HTTPS is not ready yet.
What you need before installing Joomla manually
Prepare these items before opening the installer:
- A registered domain or subdomain pointed to the correct hosting account
- Hosting that supports the Joomla version you plan to install
- Access to cPanel, DirectAdmin, or an equivalent control panel
- Permission to create a database and database user
- The full Joomla installation package downloaded from the official Joomla download source
- A secure password for the Joomla administrator account
- A way to record database credentials without leaving them in a public document
If you are still comparing providers, use a Joomla hosting checklist to check compatibility, backups, support, and upgrade options before committing to a plan. A one-click installer is not required for this process, but the hosting account must allow file uploads and database creation.
How to install Joomla manually on cPanel
1. Confirm the domain and document root
First, check that the domain resolves to your hosting account. In cPanel, open Domains and confirm the domain or subdomain you will use. Note its document root, which is often a folder such as public_html for the primary domain or a separate directory for an addon domain.
Install Joomla in the document root that serves the address you want visitors to use. Uploading the files to the wrong directory can produce a directory listing, a blank page, or an installer that appears at an unexpected URL.
If you recently changed nameservers, allow DNS changes to settle before troubleshooting the Joomla files. You can continue preparing the account while the domain becomes available, but the browser must reach the correct hosting directory to start the web installer.
2. Download and inspect the Joomla package
Download the full Joomla package that matches your intended installation. Keep the archive on your computer until you have confirmed that the upload and extraction completed successfully.
Do not modify the package or upload an upgrade package for a new site. An upgrade archive is intended for an existing Joomla installation and does not replace the full installation package.
3. Upload Joomla to the document root
Open File Manager in cPanel and navigate to the document root. Select Upload, choose the Joomla archive, and wait for the upload to finish. A large archive may take longer than the browser interface suggests, so verify that the file is complete before extracting it.
Use the file manager's Extract option in the document root. After extraction, check the folder layout. Joomla's core files should be directly inside the directory served by your domain. If extraction created a nested folder, move the contents up one level or install from that folder intentionally.
You should be able to see files and folders such as the Joomla administrator directory and the main configuration files in the location that the domain serves. Do not delete the archive until the installation has completed and you have checked the site.
4. Create a database and database user
In cPanel, open MySQL Databases or the equivalent database tool. Create a new database, create a separate database user with a strong password, and grant that user all required privileges for the new database.
Record the exact values shown by the host:
- Database name
- Database username
- Database password
- Database server or hostname
- The account prefix added by cPanel, if applicable
The database host is often localhost, but do not assume it if your host provides a different value. Copy the complete database name and username, including any cPanel account prefix. A correct password paired with a truncated name still produces a connection error.
Use a new database for a new site. Reusing an existing database can overwrite or mix tables if the table prefix and installer choices are not handled carefully.
5. Open the Joomla web installer
Visit the domain in a browser. If the files are in the correct document root, Joomla will open its installation screen. Work through the screens in order.
#### Site setup
Choose the installation language, enter the site name, and provide an administrator email address. Create a unique administrator username and a long password. Avoid using obvious usernames or a password reused on another service.
The administrator account controls the backend, so store its credentials in a password manager or another protected location. Do not put them in a public text file or send them through an unsecured channel.
#### Database configuration
Select the database driver supported by your hosting account, then enter the database host, name, username, and password you recorded earlier. Leave the table prefix generated by Joomla unless you have a specific reason to change it.
For a new database, keep the option for handling existing tables set to its default safe choice. Review the values carefully before continuing. A failed connection at this stage usually means one of these details is wrong:
- The database name or username is missing the hosting account prefix
- The database user was created but not assigned privileges
- The password contains a character that was copied incorrectly
- The database host is not
localhoston that server - The selected driver is not supported by the hosting environment
Correct the database settings in the hosting panel first, then return to the installer. Avoid repeatedly changing unrelated Joomla options when the error points to a database connection.
#### Final installation screen
Review the configuration summary and choose whether to add sample data. Sample data can help a first-time user explore Joomla, while a blank installation is better when you already have a content plan. Start the installation and wait for the process to finish without closing the browser tab.
6. Remove the installation folder
When Joomla reports that the installation is complete, use the button in the installer to remove the installation folder. If the button is unavailable, remove the folder through File Manager only after confirming that the installation finished successfully.
This is not an optional cleanup step. Leaving the installation directory in place can block normal access or leave an unnecessary setup path on the server.
7. Test the site and administrator area
Open the public site, then open the administrator login page. Sign in and check the dashboard for warnings about PHP, configuration, or recommended actions.
Perform a short acceptance test before adding content:
- Load the home page in a private browser window.
- Sign in and sign out of the administrator area.
- Create a temporary article and menu item, then remove them after testing.
- Check that images can be uploaded if your site needs media.
- Confirm the site time zone and administrator email address.
- Review the installed Joomla version and available updates.
This simple test catches document-root, permission, login, and URL problems while the installation is still fresh.
Complete the first Joomla configuration checks
A manual install is only the beginning. Make these checks before treating the site as ready for visitors.
Enable HTTPS after the certificate works
Confirm that the hosting account has a valid TLS certificate for the domain. Open the site with https:// and check that the certificate is valid before forcing HTTPS in Joomla's global configuration.
Once HTTPS works consistently, enable the Joomla setting that forces secure connections. If you turn it on before the certificate or proxy configuration is correct, you can create redirect loops or make the administrator area inaccessible. When a host uses a reverse proxy, follow its instructions for forwarding the HTTPS status to Joomla.
Configure search-friendly URLs carefully
Joomla can use search-friendly URLs and URL rewriting. Before enabling rewriting, confirm that the server supports the required rewrite rules. On Apache hosting, the Joomla package commonly includes an htaccess.txt file that can be renamed to .htaccess in the document root.
After enabling the settings, test an article and a category page. If those pages return a 404 error, temporarily disable URL rewriting and check the .htaccess filename, document root, and server support. Do not add several competing redirect rules while diagnosing the problem. Pick one canonical host format and enforce it at one layer, either through the host or through a carefully tested server rule.
Update Joomla and extensions
Check for available Joomla updates before installing templates or extensions. Only add extensions that you need, and verify that each one supports your Joomla and PHP versions. Keep a record of what you install so a future error can be traced to a recent change.
Before adding real content, arrange Secure Joomla backups and verify that a backup can be restored. A backup that has never been tested is not a complete recovery plan.
Common manual installation problems
The domain shows a directory listing
The Joomla files are probably not in the document root, or the domain points to a different directory. Check the domain's document root in the hosting panel and move the files into the directory that actually serves the site.
The installer cannot connect to the database
Compare every database value with the hosting panel. Check the account prefix, database user privileges, database host, and password. If the host uses a separate database server, localhost will not work even though it is common on shared hosting.
The site is blank or shows a server error
Check the hosting error log and Joomla's PHP compatibility requirements. A PHP version that is too old, a failed extraction, incorrect permissions, or a damaged upload can all prevent Joomla from loading. Restore the original package or re-upload it rather than editing core files at random.
Clean URLs return 404 errors
Disable URL rewriting temporarily, confirm that .htaccess exists in the document root, and verify that the server supports rewrite rules. If the host uses Nginx, Apache-specific .htaccess instructions will not apply. Ask the host which rewrite configuration is supported.
HTTPS causes a redirect loop
Turn off forced HTTPS in Joomla, confirm that the certificate works directly, and check whether a proxy or control panel is already redirecting requests. Force HTTPS in one place after the request scheme is being detected correctly.
Frequently asked questions
Can I install Joomla manually without cPanel?
Yes. The same process works with another hosting control panel or with FTP and a database tool. Upload the package to the correct document root, create a database and user, then open the site's installer in a browser.
Do I need to create the database before uploading Joomla?
No. You can upload and extract the Joomla files first, then create the database before opening the installer. The important requirement is that the database credentials are ready when the database configuration screen appears.
Should I install Joomla in public_html?
Use the document root assigned to the domain you are installing. For a primary domain, that may be public_html; an addon domain or subdomain usually has its own directory. Installing into the wrong folder is a common reason the domain does not show the Joomla installer.
Should I use sample data?
Use sample data if you want a guided way to inspect Joomla's content, menus, and modules. Skip it when you are starting a production site with your own structure. You can remove sample content later, but beginning with a clean site may be easier to manage.
Is a manual installation better than a one-click installer?
Neither method is automatically better. Manual installation gives you direct control over the files, database, and configuration. A one-click installer is faster when the host maintains it well. In both cases, you still need to update Joomla, secure the administrator account, configure HTTPS, and maintain tested backups.
Conclusion
Installing Joomla manually means placing the full package in the right document root, connecting it to a correctly configured database, and completing the web installer with accurate credentials. After Joomla loads, remove the installation folder, test both site areas, enable HTTPS only when the certificate is ready, and configure URL rewriting carefully.
Take a few minutes to verify updates, administrator security, extensions, and backups before publishing. That preparation turns a successful installation into a maintainable Joomla site.