On Monday’s I like to cover a complex development topic and give a dead simple explanation on how it works and today I’m going to walk through a FTP tutorial, focusing on: what FTP is, how it can be used, and lastly give a walk through on how to use it for a real world application.
So what is FTP? It stands for File Transfer Protocol, and essentially it’s a networking mechanism that allows for files to be transferred from one system to another. For example, if you have build an HTML website and you want users to be able to access it from the Internet you can use FTP in order to push your files to a remove server from your local computer. You’re also able to use FTP to transfer any type of file, there have been many times where I’ve utilized FTP to share large files between myself and someone else working remotely.
Services such as Dropbox and Google Drive have decreased FTP usage for file sharing, however it can still be helpful if you’re working in an organization that blocks third party file sharing services. FTP is great for simple website deployments and sharing public information, however if the files being transferred need to be protected it’s recommended that you utilize FTP’s prettier cousin, SFTP, which stands for SSH File Transfer Protocol. FTP simply creates a connection with another server and shares the file, however during transit the files could be hijacked, so it would be a poor choice for sharing sensitive information.
SFTP follows a similar process, except that it encrypts the connection, making it much more secure and a better option if you’re transferring files that need to be protected. Now that you know what FTP is, how can you use it? Typically you’ll want to use an FTP client, some popular ones are: FileZilla and CyberDuck, they’re free and they will work great if you simply need to transfer files. I usually use Coda, since it let’s me transfer files and also comes with a pretty slick text editor.
The steps for using FTP or SFTP is the same using these types of tools, and the steps are as follows.
- Select the protocol, either FTP or SFTP.
- Enter in the server URL, you can get this from your hosting company, it’s usually ‘ftp.yourdomain.com’.
- Select the port, if you’re using SFTP the default port is 22.
- Enter in your FTP username, if you don’t know this you can also get it from your hosting provider.
- Lastly, enter your FTP password. Assuming that you have entered in all of the correct information you will be logged into the server and then you can simply start dragging and dropping files.
Here is what it looks like when I log into the CronDose.com website, the window on the left hand side are all my local files, and the pane on the right is the server and to transfer files I can simply drag and drop them between the windows.
Depending on the FTP client that you use the user experience will be slightly different, but the concept will be the same. I hope that this has been a helpful FTP tutorial and will help you work with it for your development projects, in the show notes I’ve also included some links to other resources that can help you further understand how FTP works.