How to Backup Everything in CPanel

In this tutorial we will show you how to take a full backup of everything in your CPanel account. This will make a zipped archive of your files, databases, email, and much more. The process is not only one of the easiest tasks to complete as a webmaster, but it is also one of the most important.

Step 1

Click on the Backup Wizard icon under the Files section of CPanel.

Step 2

Click the Backup button on the left.

Step 3

Click Full Backup

[info color=”light” ]Note: You can download individual backups from this same location, such as your Home Directory, MySQL Databases, and Email Forwarders and Filters.[/info]

Step 4

Choose a destination to store the backup file. The easiest will be to store in the Home Directory. You may also store using an FTP backup site.

A notification email will be sent to alert you when the process is complete. To receive a notification, enter an email address. If you would not like to receive a notification, you can select “Do not send email notification of backup completion.”

Hit Generate Backup

Once the backup is complete, you will have a link on this same page. You can refresh the page every so often or come back to it later. If you have chosen to receive a notification, CPanel will send you an email to let you know when you are able to download the file.

Clean up

After downloading the file to your computer and storing it in a safe location, such as Dropbox, Microsoft OneDrive, Google Drive or another off site storage method, you will need to go back and remove the file from your hosting account. The file will remain until it is removed.

To remove the file, click on File Manager in CPanel.

Next, select Home Directory from the popup menu. If the menu does not appear, click the Home link on your File Manager page (this usually appears below the Delete option).

Scroll down the main section of the page until you find your backup file. It will usually have a name similar to this: backup-1.6.2015_00-52-00_username.tar.gz . It will also have a permissions number of 600. Below is an example of what to expect to see.

A CPanel backup file will look similar to this. Instead of saying ‘username’, it will have your actual CPanel username.


Right click on this file and choose Delete. Confirm the request to delete by clicking Delete Files. This will remove the backup from the server.

You’ve now learned how to quickly and easily backup everything in CPanel. For more tutorials on CPanel, WordPress, and other tools used by webmasters, visit us at and subscribe to our channel on Youtube.

Manually Create a MySQL Database in CPanel

In this tutorial we will show you how to manually create a database in CPanel. When you use an auto installer to setup ready to go applications like WordPress, Joomla, or Prestashop, the database is created for you. For applications such as CodeIgniter or CakePHP, a database is not created and must be done manually.

Creating a database in CPanel can be done two different ways. We will show you the easy method using the MySQL Database Wizard.

Step 1

Click the MySQL Database Wizard icon under the Databases section. Enter a database name. Most web hosts prepend your CPanel username to your database name. Hit Next Step.

Step 2

Enter a database username. Like the database name, most web hosts prepend your CPanel username to your database username.

Enter a password or use the Password Generator. Hit Create User.

Step 3

Select the privileges you would like your database user to have. Depending on your application, you may need to apply multiple or all privileges. When you are finished, click Next Step to end the process.

You have now created a MySQL database in CPanel, complete with a user account attached. You can now use phpMyAdmin to populate the database with your tables and data. You can access phpMyAdmin from the Databases section of CPanel.

For more tutorials on CPanel, WordPress, and other tools used by webmasters, visit us at and subscribe to our channel on Youtube.

How To Create an FTP Account in CPanel

In this tutorial we will show you how to create an FTP account in CPanel. While your CPanel username and password will automatically work as an FTP login, there are times when you need to create a separate FTP login. One of the most common reasons is to allow a developer access to your website files. Another is to provide access for a third party service such as 6Scan.

Setting up an FTP account in CPanel is very easy. It is a simple two step process which can be completed in less than a minute.

Step 1

Click FTP Accounts under the Files section of CPanel.

Step 2

Enter the information requested. Create a login name and a password. Choose the parent directory you would like to provide access to. Since you are starting from the base of your web hosting account, you will have to start by typing public_html for any publicly available directories. You may also limit the amount of disk space an FTP account can use.

[info color=”light” ]Note: Entering only public_html in the Directory option will provide access to all public files and directories.[/info]

Once you hit the Save button, the account will be created. The username will be appended to the domain name to appear in email address format. You will access the account using the same FTP URL and Port provided by your web host.

You’ve now learned how to quickly and easily set up an FTP account in CPanel. For more tutorials on CPanel, WordPress, and other tools used by webmasters, visit us at and subscribe to our channel on Youtube.

Tips for giving a developer access to your hosting account

If you need to hire a developer, designer or any other type of contractor, there will likely come a point where they need to access your hosting account. If you’re using a control panel that allows multiple account logins, you may be able to create a login with limited access for the contractor to use. If you’re using a control panel like CPanel, one which only provides a single sign on, things can get a little more complicated.

Providing a stranger with your account login has risks, especially when there is live data on the account. If the contractor is someone you’ve only recently met from a site like Elancer, Guru, or Freelancer, you should lean to the side of caution. This isn’t to say that these developers are bad (I myself can be found on each site). It’s more of a warning to be aware that some lack a moral compass. Doing something damaging to your existing data or outright stealing information is well within the realm of possibility.

So what can you do in order to provide a developer access to your CPanel account? Depending on what the developer needs to do, you may be able to grant access to specific functions.

Create an FTP Account

If the developer needs to access your file system, you can easily create an FTP account in CPanel. We provide a tutorial here which can guide you through the process. Once the account is created, it will provide the developer access to the chosen directory (and it’s subdirectories) so they can work with the files within. Often times, this is all that is needed.

Once the developer has finished their work, you can delete the FTP account to remove access.

Install the Application Yourself

If the developer will be using an off the shelf piece of software such as WordPress, Joomla, Drupal or Prestashop, they would typically need access to your account in order to setup a database. To avoid giving them access for this task, you can install the software yourself. If you have Softaculous or Fantastico on your CPanel account, you can instantly install any of the applications I’ve mentioned, along with hundreds of others. It will create the file system, database and database user in about one minute.

Some applications require you to manually create a database. Application frameworks like Codeigniter, CakePHP, and Laravel are pieces of code used to build on. There is no database until you create one. Fortunately, we also have a tutorial on manually creating a database in CPanel.

Reseller account

Having a new site developed when you have a reseller account is an easy process. Simply create a CPanel account for the developer to use. You can also limit the features of the account, such as removing Email or SSH. Instead of purchasing a domain, you can setup the account using a subdomain of an existing domain. For instance, if you have on your reseller account, you can create this account using the domain

Once the developer has completed their work, you will have a full working site in a real environment. From there you can backup the account and copy the files into your live location.

If you are a web developer, this is a great way to manage your own development. I make frequent use of creating under CPanel accounts because it allows me to work in a live environment without affecting the real website.

What to do after giving a developer your login

In some cases you may have to provide the master login for your account. If that’s the case, there are steps you must take in order to limit the various risks involved.

Make sure you have real contact information for the developer. Get as much information as you can. A single email address will not do it, especially if it’s a GMail, Yahoo! or other disposable address. At the very least, get a phone number.

Sign a contract. I myself have signed NDAs (non disclosure agreement) which are used to protect the client. I understand why they are necessary. Some developers like to show off their client list, which is fine. If you are OK with the developer doing so, put that in the NDA, but make sure there is information contained to prevent them from taking or utilizing your data without your consent.

Backup your data. CPanel makes this very easy. We have a tutorial which walks you through taking a full CPanel backup which automatically includes your files, email, database and more. If the developer breaks something that they can not fix, you will have a backup of your site.

Always change your password after you’ve allowed anyone into your control panel. Make sure it is a difficult password to guess. It’s also recommended to change the passwords on anything else you’ve given the developer access to, including databases, email, and content management systems.

Run a virus scan after they are finished. Part of my work has involved cleaning up after various developers. I could tell some very horrible stories of what I’ve found in customer accounts. The worst has been finding hacked files that were infected with malware. These files were likely from less than reputable sources, so the developer who installed them may not have been aware of their infections. The customer would pay the developer and soon after find their websites hacked or being used to blast out thousands of spam emails a day. This causes more headaches because a web host will often shut down a site if it is spamming, regardless of why it happened.

If you have an account with 6Scan or Sucuri, run it as well. If you do not have one, it’s recommend that you purchase one. Both companies make it their business to clean up hacked sites and prevent future issues. Even if you aren’t allowing a contractor into your site, either of these services are good to have to help prevent future issues.

Now that you have the tips to help you give a web developer access to your hosting account, you will have a much better chance of keeping your account safe. As a web developer and server technician, I know what can happen when bad developers get into your system. The information provided should help reduce the risk. If you have any additional tips, feel free to leave them in the comments section below.

Answers to Five Common CPanel Questions

To help beginning webmasters with CPanel, we have compiled a list of five common CPanel questions, complete with answers.

Can I have more than one username?

Unfortunately for some, the answer is no. CPanel only allows one login per CPanel account. In most cases, this is not an issue. For others, they may need to provide access for a developer and do not want to give out their primary login. If you need to provide access for a developer, we have an article that will help you out.

The Service Status page shows my disk is almost full but I don’t have many files. What’s going on?

Some installations of CPanel provide a link to view the service status of the server. What you’re seeing on this page is not your account, but the server as a whole. This confuses people at times because it can appear that you are using a massive amount of resources when you aren’t.

On a shared hosting account, always remember that this service status page is reading the whole server, which includes a few hundred other accounts as well. If you do notice that the disk is beginning to fill up (in the upper 90s), let your web host know. They may already be aware of the situation, but it doesn’t hurt to make sure.

Why does CPanel show one version of PHP when I’m using a switcher to use a different one? Is it broken?

No, CPanel is not broken. What you’re seeing on the sidebar of CPanel is the default version of PHP that is loaded on the server. Some web hosts allow PHP version switching so you to run a different version of the popular scripting language. Since CPanel is reading the server version, it will not reflect the same version you are using if you’ve switched.

To determine which version you are using, as well as much more about it, follow this easy 4 step tutorial to get information on your version of PHP.

AWStats says “There are no domains which have awstats stats to display.” Why?

If AWStats has not yet been activated, or was activated within the last 48 hours, you will see this message when trying to view the statistics page. To enable AWStats, click the “Choose Log Programs” icon.

To enable AWStats for every domain CPanel is controlling (including addon domains and subdomains), click the checkbox next to the AWStats column title. To enable AWStats for individual domains, click the checkbox for that domain under the AWStats column.

You can also activate any other statistics programs that your web host offers. AWStats can take up to 48 hours to begin showing statistics. Other programs offered will likely have a similar wait time while information is being gathered.

How do I start over?

Unfortunately there is no simple one click “reinstall” option for a CPanel account. If you would like to start your CPanel account over, you will need to remove all data that you no longer want. Below is a list of ways to remove various information.

Softaculous Applications

  • Click the Softaculous icon in CPanel under the Software/Services section.
  • In the top right corner, click the All Installations icon (it looks like a filing box).
  • Under the Options column, put a checkmark in the box next to each entry.
  • At the bottom, select Remove in the select box and hit Go.
  • Hit OK on the warning popup box. Softaculous will now remove every installation that was checked. This includes any Softaculous created files, databases and database users.


  • Click the Email Accounts icon under the Mail section.
  • Click Delete next to the email address you want to remove. Confirm that you want to remove the email account by clicking the Delete button that appears.
  • Repeat this for each address you want to remove. This will delete the address and all email for that address.


  • Click the MySQL Databases icon under the Databases section
  • Click the Delete Database link beneath Actions to remove a database.
  • Confirm that you want to remove the database. Repeat for each database you would like to remove.
  • Under Current Users, click the X icon under Delete for each user you would like to remove.


  • Click File Manager under the Files section.
  • If the File Manager Directory Selection popup comes up, select Web Root and Show Hidden Files. Hit Go.
  • On the secondary navigation (below the primary navigation, such as New File through Compress, and above the main area of the File Manager), click Select All. This will highlight all files and directories in your public_html directory.
  • On the primary navigation, click Delete. Confirm that you want to remove the files and directories.

[box color=”light” ]This will remove every file and directory under public_html recursively, so any files and directories under directories in public_html will also be removed.[/box]

There are more features of CPanel and your hosting account that you can remove and reset, but these are the core parts that are typically needed to be reset. If you need to reset your DNS, you can do so under Advanced DNS Zone Editor. I caution you not to modify your DNS if you don’t know what you’re doing, as this can cause issues with incoming traffic.

Have a question about this list? Post it in the comments section below.

The Trouble With Addon Domains

Many web hosts offer a feature called addon domains. This feature allows you to use more than one domain on a single hosting account, essentially providing hosting for multiple websites. While this may sound like a great idea, it can quickly become a nightmare.

Addon domains are added to your web hosting control panel. They tell the web server where to send traffic from that domain. When someone visits that domain, the web server directs the person to your account. Your account sends them to the directory you’ve created for your addon domain. As far as the visitor knows, the domain they are visiting is being hosted on it’s own account.

httpMany people use addon domains to avoid paying for additional hosting accounts or a reseller account. It’s easy to see why when your account allows you to freely add additional domains with no additional cost. So where do the problems come in?

Imagine you have ten websites that you would like to host. For our example, we’ll break them down further. In this example, you have:

2 storefronts using Prestashop
4 community forums using phpBB
3 business websites using Drupal
1 marketing blog using WordPress

Each website is running under the same control panel. This makes it easy to access them all because they are in the same general area. However, the hidden problems and dangers will soon creep up.

The Pool is Only So Big

Your web host provides a set allotment of server resources beyond the storage and data transfer rate that you focused on when signing up. You also have a set amount of CPU, RAM, Entry Processes, I/O, and Inode count. This allotment is the same for every account on the server, regardless of how many addon domains are being used.

Each addon domain will pull from this resource pool. While this won’t be a problem for low traffic sites with sufficient optimization, it will become an issue when your viewership increases. As more people view your web sites and the complexity of them is put to the test, the resource pool will soon begin to dwindle away. Soon you will notice speed and loading issues for multiple sites. You new wave of visitors will be meet with slow loading pages and error messages stating “Resource Unavailable” or perhaps database connection error messages.

Security Issues

frustrated-surfing-smallerAddon domains can also present a major threat to all of the web sites on your account. Imagine that one of the web sites on your account has a security hole that has not yet been patched. Perhaps you’re running an outdated plugin or theme which has a vulnerability you are unaware of. This vulnerability can become the doorway to all of your websites.

If a malicious attacker is able to access the filesystem of one of your websites, they will potentially have access to the rest of your web sites. This will allow them to deface and destroy files for every website under your single account, possibly harming the reputation of your web sites in the process. They may also use your account to send spam from, which can get the web server blacklisted by email providers and affect everyone on the server.

To make matters worse, an attacker could use this intrusion to gain access to your database and leak the information within to the world. One hole can lead to a lot of damage and headache for you.

Tons of Clutter

As you add more addon domains, the filesystem can become cluttered. I’ve worked with accounts in which people have hosted 50 addon domains under a single CPanel account. This can be bothersome as it takes longer to find things if they aren’t properly organized. Even when you do have sites neatly placed in various directories, you still have to find what you’re looking for.

Additionally, you have to face another issue known as inode usage. Inodes are a way for the operating system to keep track of files and directories. Each inode represents a single file or directory. Your web host will have a limit on the number of files you can have on your hosting space, even if they say the storage space is unlimited. As you add more web sites to your account, you will naturally be reducing your available inodes. Once you hit your limit your account can no longer accept files, and this includes receiving email.

Addon Domains are NOT for Reselling Hosting

Some people will use the addon domain feature to run a hosting business. This is simply a terrible idea on every level. In the case of CPanel, there is no way to provide CPanel access for your customers without giving them the master account login. If you give them that, they have access to everything, including other web sites you host.

You are also exposing every customer’s web site to the issues above. One malicious attack on a security vulnerability in a customer’s web site can effectively bring an end to the web sites for each customer you have.

In short, don’t try to build a hosting business off of addon domains. It can quickly lead to headaches.

Host Multiple Domains the Correct Way

woman-small-businessThe best way to host multiple domains is by using a reseller hosting account. A reseller hosting account provides a way to create single hosting accounts which you can use for your additional domains. This means that each domain can have it’s own control panel and allotment of resources. No more sharing CPU and RAM since each domain will have it’s own to pull from.

Using a reseller account will also help prevent malicious attacks from spreading to your other domains. If one web site is defaced, the others won’t be in the same filesystem to be discovered and suffer the same fate. This can save you hours of times since you will only need to repair one site instead of ten.

Hosting multiple websites under a reseller account also makes it easier to move a popular website when it outgrows a shared environment. Since the website will be inside of it’s own control panel account, your web host will have an easier time migrating it to a Managed VPS or Managed Dedicated Server. If it was an addon domain, it would be more difficult to move. In some cases the move would be your responsibility since the host may not offer migration services for addon domains.

Avoiding the Headaches

freaking-outI understand why some people choose to use the addon domain option. When you’re unable to afford additional hosting accounts or your web host does not offer reseller hosting, using the addon domain feature is your only option. However, keep in mind the issues that can arise. I’ve seen first hand how multiple addon domains can dissolve a shared hosting account’s resources like they were water. I’ve also helped repair the damage done to the web sites of dozens of addon domains when a single web site in the group was hacked.

If you can avoid the headaches, do so. Go with a reseller hosting plan if you need to host multiple domains. If your web host does not offer a reseller plan, find one that does.