Password protect a directory in CPanel

In this tutorial, we are going to show you how to Password Protect a directory using CPanel. CPanel makes this process very easy, with only four steps to complete. Once the directory is password protected, visitors to your website will only be able to access it or any directories beneath it by using a username and password combination that you create.

Password protecting a directory keeps it from showing up in a browser unless the visitor enters the right username and password. This is useful when you’ve made a part of your site that you don’t want everyone to see. For instance, if you’re working on a design for a client or you’re collaborating with a developer on a new section of your own site, you wouldn’t want everyone else to be able to see the unfinished work. Instead, you would put a password on that area so only the people who need to see it will be able to.

In this tutorial, we’re going to password protect the main directory of your website. This directory is called public_html, and applying a password here will lock every directory in your hosting space. If you only need to lock a specific directory, you can do so by choosing that directory in step 2.

Step 1: Selecting Password Protect Directories in CPanel


The first step to password protecting a directory is choosing the Password Protect Directories icon in CPanel, located under the Security section. Once you click it, you will choose the domain you want to work with. If you are using addon domains, you will have additional domains to choose from. If not, just hit the go button.

Step 2: Select the directory to password protect

Select the directory you would like to protect. To dig deeper into your directories, click the folder icon next to the parent directory. Do this until you find the directory you want to protect. Once you find the one you are looking for, click the name of it.

Step 3: Name your password protected directory


Once you’ve selected your directory, you are taken to the permissions page. Check the box that says “Password protect this directory”, enter a name for it and hit Save.

Step 4: Create a user to access the password protected directory


The last step is to create a user for this directory. Type a username into the Username field and a password into the Password field. If the password is not strong enough, CPanel will not accept it. You can use the Password Generator to have CPanel to create a password for you, but make sure to copy the password and put it in a safe place. When you are finished, hit the Add or Modify the Authorized User button.

Password Protected Directory Login Box
The username and password box will now appear for your password protected directory.

When each step is complete, your directory will be password protected. Since this is a recursive protection, every directory beneath will also be protected. For example, public_html will be protected, but so will public_html/images and public_html/clients.

When you’re ready to unlock the directory, take the checkmark out of the “Password protect this directory” box and hit Save.

That’s it! You’ve now learned how to quickly and easily password protect a directory using 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 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.

10 Hosting Terms You Should Know

If you are just getting started as a webmaster, there are a few terms you’ll come across that you may not understand. To make it easier for you, we’ve compiled a short list of 10 common web hosting terms that you should know.

Data Transfer (Bandwidth)

Each time a file is uploaded to or downloaded from your hosting account, you are using a resource called data transfer (some hosts refer to it as bandwidth). This transfer of data is often unlimited on shared hosting and may only count for outgoing traffic (downloading).


Each file of every website takes up space. The space used comes from an allotment of storage space on a disk drive on the host server. The amount of storage space is often unlimited on shared hosting, but this does not mean it is limitless.

Inode Count

One often overlooked limit in web hosting is the inode limit. Each file and directory represents one inode. If you have 20 files and 3 directories, you are using 23 inodes. The inode limit varies between web hosts, but it’s common to have a limit over 150,000. You should check with your web host to find out what your inode limit is.


One of the most popular web hosting control panels is CPanel. It has been an industry leader for over a decade. This control panel provides a large list of features to manage nearly every aspect of your hosting environment. CPanel offers email setup, file management, DNS configuration, IP blocking, statistics software, error log viewing, easy redirects, and much more.


If you need more than one CPanel account, you need WHM. WHM (Web Host Manager) is a control panel that manages your web hosting environment. It provides many configuration options and makes it easy to create unlimited CPanel accounts. Many people use WHM to resell hosting services using the built in Package feature.


FTP is a method of transferring files from your computer to your web hosting account. Using software called an FTP Client, you can upload files to and download files from your web hosting account. You can also mass delete files and directories. For a list of FTP Clients, check out our article Getting Started with Building a Website.


If you need to interact with your hosting account and file system on a command line level, using SSH is the way to go. SSH creates a secure connection to the server so you can run various commands in the server shell.

Addon Domains, Sub Domains and Parked Domains

If you want to use multiple domains on the same hosting account, you will use the Addon Domain feature of your control panel. Each domain will appear to be on their own hosting account to anyone who views them, but they will each run from the same hosting account. Keep in mind that this means each domain will pull from the same pool of resources. You must own the additional domain that you would like to use as an addon.

If you would like to direct an additional domain to the same site the primary domain is showing, use the Parked Domain feature. You must own the additional domain to park it.

The easiest explanation for a sub domain is this: The domain itself is The sub. is the sub domain. This feature is often used by web sites which want to separate areas of their website, such as Sub domains do not require additional domains to be purchased.


When you want to install a popular piece of web software, look into Softaculous. Softaculous is a one click installer that boasts a massive library of more than 300 applications and scripts. You can quickly install WordPressJoomlaPrestashopMagento, CodeIgniter, phpBB, Dolphin and many more.


Contrary to what it sounds like, this typically does not mean you have an endless amount of resources. Storage space, one of the primary unlimited features, has a limit. Disk drives only have so much space, and the more drives and files there are, the harder it is on the server. If you are considering a web host that offers unlimited resources, ask the host for more specific information. If you plan to host 50GB of content and serve it out to 30,000 people a month, make sure your host allows that on the plan you’re considering.

While this isn’t an exhaustive list of common terms, these are things you should get to know well. They will help you understand your hosting plan better and how to interact with it.

What is a VPS?

Many web hosts offer a product called VPS (virtual private server). You may have seen it on their service listing, or perhaps received a recommendation from your web host to upgrade to this option. In this article, we’ll explain what a VPS is and why you should consider one.

A VPS is the middle ground between a shared hosting account and a dedicated server. It acts like a dedicated server, running it’s own copy of the operating system a container. It comes with a specific amount of RAM and CPU power for your hosting environment for your operating system, server software and website to utilize.

Typically, you are allowed to run various software that the OS can support, including those not allowed on shared hosting (such as chat and other resource intensive applications). This doesn’t mean you can run everything ever created, but you are usually allowed to run applications that are banned from a shared environment.


A VPS usually comes in two flavors: user managed and host managed. While each company will have their own definition of user and host managed, this is the typical meaning of each:

User Managed VPS (also called ‘unmanaged VPS’ or simply ‘VPS’) is a blank install of the OS of your choice, with no control panel and little support from the hosting company. In fact, the support is usually limited to network and hardware issues. In many cases, you can reinstall your OS at any time with only a few clicks. The service comes with root access so that you may handle installation, configuration and maintenance of your hosting environment. At least one dedicated IP address is provided.

Host Managed VPS (also called ‘Managed VPS’) includes a control panel and full support from the hosting company for network, hardware, and the server environment configuration. It may or may not come with root access. A Host Managed VPS is usually very similar to a Shared hosting account, but with less chance of neighbors on the server causing problems and more flexibility in terms of configuration. At least one dedicated IP address is provided.

Why should you choose a VPS

There are a few reasons why you should choose a VPS. Below is a short list of several common instances when you should opt for a VPS.

Your site has outgrown a shared host

Does your website need to move to a VPS?
Does your website need to move to a VPS?

As a website grows in popularity and/or complexity, it will naturally consume more resources. When this happens, your site will eventually reach a point where it needs to move beyond a shared hosting environment. Moving to a VPS will allow your site to grow into the new pool of resources provided by the plan you choose.

You need root access

Some webmasters require root access. It may be for configuration of the website and software or for access to logs when something goes wrong. Since a web host is never going to provide root access for a shared server, you will need to go with at least a User Managed VPS. This will allow you to log in as root and do anything to your operating system and server software that you need.

You need to run software which is banned on shared hosting, is resource intensive, or requires an OS different than that of a shared plan.

chat-smaller-smushitSome software is banned from shared hosting for good reason. Software which is resource intensive or may otherwise cause problems for other shared accounts will not be allowed to run on a shared environment. You can usually find a list of such software in your web host’s Terms of Service or Acceptable Use Policy. In many cases, much of this software can be used on a VPS, though you should double check with your host prior to purchasing a plan.

Some software is OS specific. With many web hosts using CentOS Linux, running software that is made for Debian would require a different OS. With a User Managed VPS, you can typically choose from a list of available operating systems in which to use.

You need to send bulk email

Shared servers will usually have an hourly email sending limit which will stop email from being sent once you reach that threshold. This is to prevent mass spamming and bulk emailing. If the limitation is not network wide, you may be able to avoid the limit by using a VPS. If you need to send bulk email, check with your service provider about sending bulk email via VPS, and if there are any hourly sending limits that you may face.

You want to store large files

Software like ownCloud allows you to backup files to your hosting space to store and share with others. Your web host may have rules against storing files that are unrelated to your website. These rules don’t always apply to VPS and higher. If you need to store files, in particular large files, a VPS is usually the place to do it.

You want to reduce the risk of issues from other customers who share your server.

A VPS is a shared environment of sorts. There are other people on the server with you, but each account is privatized within it’s own operating system container. This reduces the chances for others on the server to cause headaches for you. On a standard shared hosting plan, your server neighbors have a much greater chance of breaking things for everyone on the server.

You Need Additional Configuration Changes

Some websites require changes to various settings in the hosting environment. While your hosting provider may allow you to change PHP.ini settings, they are unlikely to allow you to modify how many concurrent connections can be made to your site (how many people can be on your site at a single instance). Limitations on entry processes and MySQL connections are among some of the most common ceilings that people hit. With a VPS, these can be modified to a higher value.

When to Move to a VPS

WorkingIf your web hosting provider is suggesting an upgrade, don’t just brush it off as a greedy attempt to get more money out of you. Evaluate the reasons behind the request. If your site is breaking a Terms of Service rule for Shared Hosting, there is likely little you can do other than remove the cause for the infringement or upgrade. If the reason is because of resource usage, you may be able to hold off moving to a VPS.

Your website should be as tightly optimized as possible. Make sure your code is strong and well written. If you are working with a system like WordPress, use thoroughly vetted optimization plugins and remove any outdated or unused/deactivated plugins. It is also a good idea to utilize services such as Cloudflare to deliver cached versions of your content, thereby reducing the resource usage on the server. Cloudflare also filters incoming traffic to help prevent malicious users and comment spam.

If optimizing your website isn’t enough, moving to a VPS is going to be the best next step. If you are moving to a Host Managed VPS, the upgrade is relatively painless. A good web host will take care of migrating your account for you. All you will need to do is update the nameservers for your domain.

Using a VPS has several advantages for a website, but make sure you get the correct product. If you are not comfortable working with a user managed product, one which requires you to handle everything about the OS and server software, get a Host Managed VPS. You will pay more for it, but the peace of mind is worth it.

What is Unmanaged Hosting?

If you are searching for a hosting provider which offers services beyond shared hosting, you will likely come across the term unmanaged hosting. This term may sound odd. Shouldn’t all hosting be managed? Let’s explain what unmanaged hosting is.

Each host will interpret the term unmanaged hosting in their own way, but the following is a fair definition of what unmanaged hosting is:

Unmanaged Hosting
Web hosting in which the provider manages the network and hardware of the server, but very little (if anything) else. Unmanaged hosting is a term typically used for VPS, Cloud and Dedicated platforms, sometimes referred to simply by the type of hosting (such as VPS as opposed to Managed VPS), or called user managed.

The unmanaged hosting environment is often chosen by someone who knows how to handle a server environment and requires resources higher than that of a standard shared hosting platform. Also, it will usually come with root access to the server to allow the customer the ability to configure the server the way they want, and install various software which may be unsuitable for shared hosting. For instance, someone wanting to run a resource heavy chat client would choose an unmanaged VPS or dedicated server to run their application, something usually prohibited by shared hosting terms of service policies.

Unmanaged hosting is usually less expensive than it’s opposite, managed hosting. This is because the cost of additional labor to handle configuration and troubleshooting, as well as provider installed software is not needed. However, the cost is only worth it if you know what you are doing. If you feel comfortable with an unmanaged platform, go for it. If not, you may want to check out managed hosting.