Idiots Guide to FTP
What is FTP?
FTP is short for “File Transport Protocol”
If you think of other shorthand codes you know for the internet – HTTP for example. That stands for “Hypertext Transport Protocol”. So they are both related to transferring data for websites. Http is used for us to view websites from the outside – their finished look. FTP is used to look behind the scenes, at the files on the server that make up the website.
Http would be like looking at a car. Whereas FTP would be opening up the bonnet and looking at the engine that makes the car work.
Why would you want to look inside the engine of your website? Well, you can do a lot of things in FTP that aren’t easy to do elsewhere. You can also keep an eye on what exactly is going on behind the scenes, which isn’t always easy to know from just looking at the outside of the website.
Examples:
1/ Seeing what images are on the server and checking for old images that are no longer used.
2/ Seeing what thumbnails actually exist on the server, what the sizes are.
3/ Seeing if there are webP versions of your images on the server and if all versions exist.
4/ Changing things in your .htaccess file, adding security code for example
5/ Checking your Robot.txt file (if you have one).
I personally consider being able to FTP my servers a vital tool in my toolbox to be able to make sure my websites run as quickly and as smoothly as possible and also don’t become bloated and full of old rubbish. When I transferred my main website last year to a new web hosting company, I was shocked to find out that the website had grown to 23Gb in size. After cleaning out the server, removing thousands of redundant thumbnails and images that were no longer used, I managed to reduce the size to 6Gb. Some hosting companies won’t let you have a server over 10Gb – so it’s useful to keep an eye on things under the hood.
How do I FTP my Server?
First off, you need an FTP program (aka FTP Client). There are various on the market, some free, like Cyberduck, some paid for. My personal favourite for the Mac is Transmit. Which is now on version 5. I bought this a long time ago and don’t remember it costing much at all. Not sure what the current price is on the App Store.
The reason I like it so much better than the others I’ve tried, is it just works. With Cyberduck I was always running into strange errors, setting up new sites was always over complicated and never seemed to just work. Transmit does. I also like it’s clean interface, its just like working in the OSX Finder. The folder layout looks identical making it really easy to go through and find things easily.
Setting Up Your FTP Client
First off, you might need to set up an FTP User on your server. This is normally done through your web hosting companies interface. Either in cPanel or whatever interface they give you. You give the new FTP user a Username and a Password. As this is powerful stuff and enables entry into the backend of your server, I suggest making it a strong password. I use 1Password for all my password creating and normally create at least 24 digit totally random passwords. Saves me ever having to remember what they are – that’s 1Password’s job to remember them for me.
In your FTP client, press New Server. There are two versions of FTP. The newer SFTP, Secure FTP or the older FTP. If possible, try and get the STFP version to work, as guess what, it’s more secure. However, if for any reason your server refuses to play nicely, then try the standard FTP option. In Transmit, you can give the new server a name, so you can recognise it later.
Next it will ask you for your username, password, address of the server you want to FTP and other info such as the root URL and possibly port number. You will already know the Root URL, which is your full website URL. For some servers, your Username might require the full path including the @server part. For others, it just requires the first part of the Username. The Address part should be shown on your web hosting side, in the info there about setting up FTP. Sometimes this will say something along the lines of ftp.server.com it may also give you a specific port number to use.
Press Save and it should take you back to the main window, with your new server listed. Click on it and it will attempt to connect to your server. You should now see a view similar to the one below. Where it’s listing the files on your web server. For a standard WordPress site, you should be seeing the standard WordPress folders, wp-admin, wp-content, wp-includes.
In the View menu on transmit, choose Show Hidden Files and it will show you other files, like the htaccess file, which is normally hidden. Just like on a Mac, any file with a full stop in front of it will be a hidden file, unless you choose to see the hidden files.
Be careful. Don’t delete things or edit things unless you are sure what you are doing. It’s always good practice for example to duplicate the .htaccess file, before you edit it. That way, if you mess it up, you have a backup copy. Renaming that one back to .htaccess will restore things to where they were before you changed the file. However, don’t be scared to look inside of things either. You won’t break anything by just hitting Edit in Transmit – to take a look at the contents.
What Can You Do in FTP
I’ll leave that to other articles. Check out the article about clearing your website cache that I posted recently.