Send files to your cPanel web host via FTP

If you have a webhosting account, you will find that you need to send files to it from time to time.

Many webhosting accounts use cPanel for users to interact with their online account. This comes with a File Manager, which you can use to send and browse the files in your online space.

This is fine for the odd file, but if you want to move many files, it’s very difficult to do this quickly. There has to be a better way!

FTP (File Transfer Protocol) is the answer. Without getting technical, it’s a way of easily sending files between your computer and a server.

You may have heard of FTP before, but you’re not really sure how to use it. If so, this guide is for you!

Here, I will show you how to setup FTP to easily send files to your webhost.

Step 1: Install FileZilla (or your client of choice!)

Firstly, we need to install an FTP client. This is a program which is installed on your computer, which uses FTP to communicate with your server.

There are many FTP clients available. I use FileZilla for the simple reasons that it’s widely used, free, and works. I will be using FileZilla for this guide. You can download and install it from here.

Step 2: Get FTP configuration file in cPanel

Next, log in to your webhosting account, and open cPanel. (I am using SiteGround, so yours may look a little different, but the process should be similar.)

Under cPanel home, find Files, and open FTP Accounts:

You should now see a list of FTP accounts you can use, for example:

Now, you need to decide which account you want to use. If you are the administrator or the only user of the account, you should look at the account that has the same name as your username. (This is the root account – look for the one with the most data.) But if you are creating an account for someone else, and you only want to give them access to a specific folder, you should use the option to add an FTP account.

Once you have chosen which FTP account you want to use, click on Configure FTP Client:

You want to download the configuration file for your FTP client. SFTP (secure FTP) is better, but if it’s not available, or you have problems with SFTP, FTP configuration file is okay.

(No configuration file for your client? Skip to the last section!)

Step 3: Import FTP configuration file to FileZilla

Open FileZilla. Go to File > Import. Open your configuration file that you just downloaded.

Confirm any messages that appear.

Step 4: Connect!

Now, we are ready to connect to our FTP account.

Go to File > Site Manager.

You should see an entry on the left. This is the FTP account we just added.

Select it and press Connect.

Enter your password. This will either be the password of your hosting account or, if you created an FTP account earlier, the password you made then.

If all has gone well, you should see your files appear in the main window. This is a direct link to your hosting account, and you can drag and drop files and folders into this window as you would the files on your own computer. They will be synced automatically to your hosting account. Nice!

In future, when you want to use FileZilla, head straight to the Site Manager, and connect from there. It will remember your configuration file, but you will need to put your password in each time.

The Last Section: Connecting without a configuration file

If, for whatever reason, you can’t use a configuration file, you can connect manually.

In step 2, instead of downloading a configuration file, look at the manual settings.

Then, in FileZilla, put these manual settings into the text boxes near the top of the window (click for full size):

Finally, hit Quick Connect. The process should be similar for other clients.

Add a new domain and WordPress installation through cPanel

If you have a website using webhost such as SiteGround, you are probably using the cPanel software to manage it. Many hosting packages allow multiple domains to be hosted. This short guide shows how to set up a second and a third domain on your hosting service through cPanel, and how to set up a WordPress installation on it.

I have such a package with SiteGround, and of course I am running james-ramsden.com on it. After a recent trip to Japan, I am wanting to create a new website called ski-hokkaido.com to document the trip (though we’ll see if that actually happens!), and to save costs I am going to run it from the same SiteGround hosting account. It’s been a while since I’ve done something like this, and it was a bit of a headache when I couldn’t remember how to do it, so hopefully this guide will jog both my memory if I need to do it again, as well as hopefully being useful for anyone else…?

This process is free of charge. It takes about 10 minutes of your time, though it will take between 2-48 hours for the servers to catch up and your new website to be live.

Step 0: What you need

  1. A new domain address that you want to set up
  2. A hosting account which uses cPanel as its management tool

In my case, I bought the domain from NameCheap, and I use SiteGround as my webhost.

Looking for a webhost? James-Ramsden.com is hosted by SiteGround, and I happily recommend it to others. If you are looking for a fast and good value web host, you can help support this site by signing up for SiteGround here.

Step 1: Point your domain to your webhost’s server

Your Domain Name Server (DNS) information is what turns human-readable website names (www.something.com) into a computer-readable address that helps your browser find which computer in the world it is supposed to be talking to. Your website is ‘saved’ physically on your webhost, so when a user types your web address into their browser, it needs to be able to find your webhost so that they can access your website.

Your domain is what allows this process to happen. The domain registrar essentially is the company that ‘points’ a browser towards the computer where a website is being hosted. When you have just bought a new domain, you have to make the link yourself between the domain and your website.

So how do we do this? Basically, have to find the DNS information for our webhost, and point our domain towards it.

Step 1a: Go to SiteGround (or your equivalent) and log in to cPanel. Under ‘My Accounts’, look for ‘Name Servers’ in the top left.

siteground

Keep this tab open.

Step 1b: We need to tell your domain registrar about the DNS addresses we found on our webhost, and the process may vary slightly depending on which company you use.

Open a new tab. Log in to Namecheap (or your own registrar) and go to ‘Domain List’.

namecheap1

Find your website and click the ‘Manage’ button.

namecheap2

Scroll down to the ‘Nameservers’ section.

Select ‘Custom DNS’ and copy the DNS information that you got from SiteGround into the textboxes.

namecheap3

Save changes.

Step 2: Set up your domain on your webhost’s server

We have now told your domain registrar to point to your webhost when someone enters your new domain into their browser, but we haven’t told the webhost what to do when they arrive. So now we need to set up our WordPress blog, and configure it so that it loads when someone comes to our webhost with this domain.

Firstly, you need to log in to your cPanel interface. I did this by going to SiteGround, logging in, going to ‘My Accounts’ and ‘Go to cPanel’.
dns6

Once inside, find ‘Addon Domains’.

dns7

Fill in the fields below.

dns8

The ‘New Domain Name’ is the domain you have just bought, exactly as you registered it, but without the http part. The next two fields should autofill to sensible values, or if not then replicate the patterns in the image. Finally, enter a password.

Step 3: Set up WordPress (optional)

The above step created a folder in our server space, but there’s nothing in it. You can of course do anything with this space, but here we’re going to install WordPress.

Many webhosts using cPanel make it easy to install WordPress through cPanel. Go back to your cPanel interface and find the WordPress installer.

dns9

Select ‘Install’. A form will appear where we set up our WordPress blog. Find your domain in the drop-down box.

wp1

Give the site a name and a description. (You can change these later on from the WordPress dashboard.) Leave ‘multi-site’ off unless you know exactly what it is, even if you have multiple WordPress blogs. The username and the password is how you log in to the WordPress admin view, where you design your site and create content. You don’t want people hacking this, as it gives them full control of your WordPress site, so give it a secure username and password!

If you have email set up on your webhost, you can use something like has is given to you. Alternatively, you can use any email address you like. This address isn’t visible from anywhere on your site by default.

wp2

Everything else can be left as default. Click ‘install’ at the bottom, give it a few minutes, and you’re done!

So… where’s my website??

You would think now, that if we enter our address of our new website in our browser, we should see a tantalisingly empty blog, waiting to be filled. You may notice that something does load when we enter the address, but it’s a generic page filled with ‘NameCheap… website coming soon!’ with words to that effect, and no way of actually doing… anything!.

The answer is simply, relax! Transferring over domain names tends to take a while, and sometimes as long as 48 hours. With NameCheap and SiteGround, in my experience it does take a couple of hours.

And when it’s ready, you can start to edit your WordPress website in the usual way – just head to http://mydomain.com/wp-admin. Once there, enter the login details you gave when you created the WordPress installation.

Have fun!