Web Hosting Fundamentals

Reid Watson
4 min readFeb 12, 2021

As part of my web development bootcamp curriculum, I learned a wide variety of software development tools, including Ruby on Rails, Javascript, frontend frameworks such as ReactJS and Redux, as well as HTML and CSS libraries like Bootstrap and Semantic UI.

Learning these languages was crucial for my development as a tech professional. However, one aspect of web development that I never quite understood until recently is the actual nuts and bolts of how to publish a website once it has been completed. Numerous website builders like Wix, WordPress, and Squarespace are available for people who want websites, but lack the technical knowledge to actually create one from scratch. But if I’ve gone through the process of building a web application from the ground up, how do I upload my source code to the internet?

The answer is web hosting, and it’s actually pretty complex. In this article I’ll go through a basic tutorial of how to publish a custom web app via web hosting services offered by GoDaddy.com.

What is Web Hosting?

First off, web hosting is the process of renting or buying space to house a website on the World Wide Web. Website content such as HTML, CSS, and images has to be housed on a server to be viewable online. There is a plethora of companies that offer this service, including BlueHost, Netlify, GoDaddy, SiteGround, DreamHost, etc.

Deciding which web hosting service to use can be a daunting and somewhat confusing experience. This resource from WPBeginner.com gives descriptions, rankings, and reviews for a bunch different options. Prices vary widely, and some web hosting plans offer slightly different services, memory capacity, and technical support. It’s important to weigh the options when publishing your site, and think about the kinds of web hosting features that would best suit the app.

cPanel

For the purposes of this article, let’s use GoDaddy as a web hosting service that we can use to publish our code. GoDaddy is a highly reputable and reliable web hosting company that offers a wide range of options, and even includes a fairly intuitive website generator if you don’t want to go to the trouble of building the site from scratch.

Once you’ve created a GoDaddy account and selected a web hosting plan, the next step is to upload the file structure of your web app using software called cPanel. cPanel is an online Linux-based graphical interface (GUI) used as a control panel to simplify website and server management. Most web hosting services such as GoDaddy have a pre-built cPanel that is included with your purchase.

This is an example of a typical cPanel dashboard, where you can customize every aspect of your website, the databases you use, your domains and subdomains, your file structure, email accounts, etc.

File Transfer Protocol

When you first open up your cPanel, you’ll need to upload your source code with the File Manager.

Within the File Manager, choose the files from your local machine that you wish to publish. These files will then transfer to the cPanel via File Transfer Protocol, more commonly abbreviated as FTP.

FTP is a client-server protocol that may be used to transfer files between computers on the internet. The client asks for the files and the server provides them. FTP is built on a client-server model architecture using separate control and data connections between the client and the server. Your cPanel will most likely come with its own FTP client that you can use to upload. But if not, third-party clients such as FileZilla are a great, easy-to-use option. Simply install the software onto your local machine and follow this tutorial to get started.

Publish

Once you’ve completed all of the above steps, simply click “Upload” in the File Manager, as shown below, and tada! Your website can now be viewed and used from any computer in the world!

Hopefully this short tutorial will help you navigate the web hosting process, and allow you to share your work with the world. Thanks for reading, and happy coding!

Sources:

--

--