LESSON 11.5
FTP
Upload your website files to your hosting server
Learn how to use FileZilla to connect to your hosting server via FTP and upload your website files so they are live on your domain.
💡 The Concept
Using FTP to upload website files is the traditional way to transfer your local project to a hosting server so it goes live on your domain. FTP stands for File Transfer Protocol. It is how web developers move files from their computer to a web server. Once you understand it, you have direct control over everything in your hosting account.
Local Files vs. Remote Files
FTP software shows you two panels at once:
- Local files (left panel): the files on your own computer
- Remote files (right panel): the files on your hosting server
To publish your site, drag files from the left panel to the right. To download a backup, drag from right to left.

FileZilla: The Most Popular Free FTP Client
FileZilla is the standard FTP application for web developers. It is free and available for Mac and Windows.
Download it from: filezilla-project.org
Connecting to Your Server
Your hosting provider will give you FTP credentials, usually found in your hosting control panel. You will need:
- Host: your domain name or server IP address
- Username: your FTP username
- Password: your FTP password
- Port:
21(the default FTP port)

After connecting you should see the message: Directory listing of ‘/’ successful. That means you are in.
Uploading Your Website
- On the right (server) side, navigate into the
public_htmlfolder. This is the root of your website. - On the left (local) side, navigate to your project folder.
- Select all your files and folders and drag them to the right panel.

Rules to Follow
index.htmlmust be directly insidepublic_html, not inside a subfolder. If it is buried in a folder, your site will not load.- Keep your folder structure intact: if your images are in an
images/folder locally, upload that folder too. If the path changes, your images will break. - Use lowercase filenames: servers are case-sensitive.
Photo.jpgandphoto.jpgare treated as different files. Your computer may not catch this, but the server will. - Avoid spaces in filenames: use hyphens or underscores instead. Spaces cause broken links on servers even when the file is there.
Exercise: Try It Yourself
Step 1. Download and install FileZilla.
Step 2. Log in to your hosting control panel and locate your FTP credentials (host, username, and password).
Step 3. Enter your host, username, password, and port 21 in the FileZilla toolbar and click Quickconnect.
Step 4. On the server (right) side, navigate into the public_html folder.
Step 5. On the local (left) side, navigate to your project folder. Select all your files and drag them to the right panel.
Step 6. Visit your domain in a browser to confirm the site is live.
❓ Frequently Asked Questions
Standard FTP is not encrypted, which means your credentials are sent in plain text. Many hosts offer SFTP (Secure FTP), which encrypts the connection. FileZilla supports both — just use port 22 instead of 21 when connecting via SFTP. Use SFTP whenever your host supports it.
The most common cause is that index.html ended up inside a subfolder rather than directly in public_html. Open FileZilla, check the server side, and confirm index.html is at the top level of public_html. If DNS propagation is still in progress after a recent domain change, give it a bit more time and use whatsmydns.net to check.
Yes. Navigate to the correct folder on both sides in FileZilla and drag just that one file to the server. It will replace the existing version. This is how most day-to-day updates work once your site is live.
It is the root folder of your website on the server. Anything placed directly inside public_html is accessible at your domain. Files stored outside of it are not publicly visible, which is also how hosts keep sensitive files like configuration or database backups private.
★ Key Takeaways
FTP gives you direct access to your hosting server so you can upload, update, or back up your website files at any time. The key habits to build are keeping your folder structure consistent and using lowercase filenames. Next, you will learn about GitHub Pages, a free way to publish a website without FTP or paid hosting.
Google Ads
The costs of this website are partially offset by revenue from Google Ads.Tools of the Trade
HTML/CSS Lessons
-
-
-
1.3. HTML Tag Preview
-
-
-
2.2. The HTML Framework
-
-
2.4. HTML Headings
-
-
-
-
-
-
3.01. Introduction to CSS
-
3.02. How CSS Cascades
-
-
-
-
3.05. CSS Colors
-
3.06. RGBA Colors
-
-
3.08. Font and Text Properties
-
3.09. Classes and IDs
-
-
-
-
-
4.3. HTML Embedded Images
-
-
-
-
-
-
5.1. CSS Borders
-
5.2. CSS Border Radius
-
5.3. CSS Gradients
-
5.4. CSS Box Shadows
-
5.5. CSS Text Shadows
-
7.1. The Display Property
-
-
-
7.4. The Box Model
-
-
-
-
-
-
9.1. Website Tables
-
9.2. HTML Forms
-
-
9.4. Special Form Fields
-
9.5. Embedding Multimedia
-
-
9.7. Keyboard Shortcuts
-
10.1. What Is a Framework?
-
10.2. Font Awesome Icons
-
-
10.4. Bootstrap Grid System
-
-
10.6. Bootstrap Navigation
-
-
11.2. Purchasing a Domain Name
-
11.3. Website Hosting
-
11.4. Nameservers and DNS
-
11.5. FTP
-
11.6. GitHub Pages
