At some point or another, it will be necessary to upload (or download) files from your server. Even if you use WordPress, there are occasions on which you will need to have direct access to the content of your server.
For years, the most popular file transfer method was the File Transfer Protocol (FTP), which comes pre-installed in every InMotion Hosting account (and virtually any hosting account you may find).
If you don’t have FTP, it’s easy to install, setup, and use. And if you’ve ever had a long download stall in the middle, you know how much time can be lost re-uploading from the beginning. One of the great things about FTP is that it can continue a transfer from where it left off.
What FTP gains in convenience it lacks in security. FTP is not encrypted. This means the format is open and files could be spied on in transit. For security-conscious users, there are more secure alternatives to check out.
So, if you don’t like FTP, or you want something quicker, secure, and more flexible, there are many alternatives for transferring files.
Note Your Document Root
Most importantly, to properly configure any kind of file transfer, it’s critical to have the right document root.
The document root of your website is the highest level in the file hierarchy. It will be the directory that is used when your domain name is pulled up in a browser.
For your purposes, you will need to have the document root set properly, or you will be uploading files to the wrong location.
The document root is one part of your server’s file architecture. You should seek to be familiar with the rest of the file system, but that is outside of the scope of this article.
Secure Copy (SCP)
Secure copy (SCP) is a very simple, highly configurable command line file transfer tool.
SCP uses the SSH protocol, which is very reliable and secure right out of the box, so minimal setup is required to get it working.
Secure File Transfer Protocol (SFTP)
Technically, SFTP is sort of like FTP, but it’s different. The “S” part means “Secure,” and it uses a different port than standard FTP.
But, you can use the same FTP client you’re familiar with and re-configure it for SFTP.
Git
Git is a popular version control system, but you can also use it for publishing files to your server.
Using Git for file transfer is preferable, if possible, because you can save a few extra steps. With “hooks,” you can program your Git system to automatically transfer files whenever you “commit” your code or at any point in your workflow.
In order to set up these hooks properly, it’s best to work on your command line jujitsu, but you can also use the Github website.
If you’d like to get familiar with Git, I’d recommend starting with our Git series in the Support Center.
cPanel File Manager
For many users, the cPanel File Manager provides the most user-friendly interface for transferring files. It’s easy because you can bookmark it right in your browser. And all you need to log in is your cPanel username and password.
In order to get to the file manager, all you need to do is log into cPanel and select File Manager under the “Files” section.
Once there, you can easily navigate your file system, upload, and download files.
Local Folders
In addition to the file transfer methods above, you can also use your local file browser. In the Mac world, you might be familiar with the “Finder,” similar to the Windows “Explorer.”
Your local file system can also connect you to your servers using FTP, SSH, or other protocols.
At some point or another, you will need to get access to your server files. For everyday use, the cPanel file manager is probably the best option. But if you have any large files, try SCP or SFTP. For quickly syncing smaller files between two servers, Git is the best option.