How to Host a Website in 2023 (Full Guide for Beginners)

For more Productivity Tools, check out the Business Toolkit…

twine thumbnail How to Host a Website in 2023 (Full Guide for Beginners)

If you want to grow your business online and attract more customers, hosting a website is important. There are two methods to do it: either using a hosting platform or a local server. The former might be a more convenient option: you don’t have to worry about the server configuration and back-end settings. On the other hand, you may need technical knowledge to know how to host a website locally.

In this article, we will explain how to host a site, choose the best hosting services, and create a WordPress site using hPanel and cPanel. We will also add three ways to point your domain to the correct server.

Our freelancers can scale your creative output for all marketing channels such as graphic design, animation, video, copywriting, and more.


3 Simple Steps to Host a Website

Here are three steps to host a website using a hosting company:

1. Choose a Hosting Type and Provider

The most common hosting types include shared, WordPress, VPS, cloud, dedicated, and eCommerce. Each offers different perks and server resources.

Here’s a comparison of five popular hosting providers:

CompanyHostingerDreamHostBluehostHostGatorSiteGround
Rating4.5/54.7/54.1/54.1/54.6/5
PriceStarting at $1.99/monthStarting at $2.59/monthStarting at $2.75/monthStarting at $2.75/monthStarting at $3.99/month
Storage space50 GB50 GB10 GBUnmetered10 GB
Money-back guarantee30 days 97 days 30 days30 days30 days 
Uptime99.90% 100% 99.00%99.00%99.99% 
SupportLive chat, emailLive chat, emailLive chat, phoneLive chat, phoneLive chat, phone

2. Register a Domain Name

A good domain name is short, simple, and memorable. When it comes to top-level domains (TLDs),.com is still the most popular option due to its familiarity. However, you can be creative and pick one that relates to your business niche. 

Most hosting providers offer free domain name registration. Alternatively, you can buy it from a domain registrar, such as Hostinger or Domain.com. 

3. Upload Your Website

After choosing a suitable hosting plan and provider and registering a domain name, the last step is to upload your website to the internet. Here are two ways to do it:

Using File Manager

File Manager usually comes bundled with the hosting control panel and is the most convenient option for beginners. However, it usually has an upload limit that varies depending on the hosting provider.

Using File Transfer Protocol (FTP)

FTP is a tool for transferring files between computers without a size limit. Usually, the hosting provider comes with access to FTP, and all you have to do is install the software on your personal computer.

Once you find all the important information regarding the FTP account, it’s time to configure the FTP client. We recommend using FileZilla since it has a beginner-friendly interface.

How to Choose the Right Hosting Provider for Your Website

Now, let’s get into more details. Here are seven important aspects to consider when choosing the best hosting provider for your site:

Price

Most hosting providers offer big discounts for new users. While this may look like a good deal, their renewal prices may be drastically higher. As such, ensure to conduct some research before deciding on a package. Alternatively, pick a web hosting provider that offers bigger discounts if you purchase the plan for more than a year.

Ultimately, everything depends on your hosting budget.

Server Location

Server location is a crucial factor in determining your site performance. The closer it is to your visitors, the faster your website loads for them. Therefore, ensure the hosting provider offers a data center close to your target audience. 

Features

You should carefully examine the resources offered by a web hosting provider. Doing so helps you determine how many visitors your website can handle and much you can grow it in the long run. Besides disk space, bandwidth, and an uptime guarantee, a good hosting provider should offer regular backups, a website builder, 24/7 support, and security features, such as a free SSL certificate.

Technical Support

Check whether you can talk directly to a representative or submit a ticket if you need help with your hosting. On top of that, a good web host should offer 24/7 support – you don’t want to be waiting when your website is down.

User Feedback

Reading user feedback on online review sites helps you judge objectively when choosing the best web hosting service provider. Only first-hand experience from other users can prove whether the advertised features are true.

Hosting Type

Websites have different requirements. While a personal blog might run smoothly on shared hosting, a large eCommerce store with complicated configurations may need a dedicated server to work.

Here are the five most common types that many web hosting companies offer:

Shared Hosting

Shared hosting is the most cost-effective option to host multiple websites on the same server. A shared hosting service is best for small businesses, web development beginners with medium-sized sites, or personal blogs. However, since you share the server with other customers, this plan typically offers limited features and resources.

VPS Hosting

VPS hosting offers an isolated container with dedicated resources for your website. It’s best for complex applications or resource-intensive projects. However, we don’t recommend this hosting type to beginners. You must have a technical background since you need to set up your own dedicated server from scratch.  

Cloud Hosting

Cloud hosting offers comparable resources to a virtual private server (VPS) without all the technical stuff. It’s best for medium to large business websites. However, with its extensive features, the cloud package costs more than shared hosting plans.

WordPress Hosting (Managed vs Unmanaged)

Most hosting providers offer managed WordPress hosting that comes with configured website security, backup options, and automatic updates. However, it provides limited flexibility, as you can only build the website with resources allocated for you. 

On the other hand, unmanaged WordPress hosting is a suitable choice for advanced users who like to tweak some code or have greater responsibility over their sites. This means it requires specific technical knowledge and is more complicated to handle.

Dedicated Hosting

With dedicated server hosting, you’ll get an entire server and have full access to modify, set up, and customize its settings. It’s ideal for large businesses, high-traffic sites, or complex web applications. However, dedicated hosting requires advanced web development skills since you’ll control your own server management.

eCommerce Hosting (WooCommerce, Magento, PrestaShop, etc.)

This type is one of the best web hosting services for online stores. Many hosting providers include specific features to enhance the functionality of your eCommerce site, such as shopping cart software. However, before deciding on a hosting plan, you must have basic knowledge of the chosen content management system (CMS). This will help to create and develop the site. 

How to Install a Website on a Hosting Account

This section shows how to host a site on Hostinger’s hPanel and a cPanel interface.

How to Use Hostinger’s Auto Installer

In this example, we will install WordPress using Hostinger’s Auto Installer.

  1. Log in to your Hostinger account.
  2. On hPanel, go to the Hosting tab and click Manage on the chosen hosting plan.
  3. Type in Auto Installer on the left-side Search bar and press Enter. Alternatively, select Website from the drop-down list and choose Auto Installer.
The hosting dashboard showing where Auto Installer is in hPanel

  1. Click the Select button on the WordPress option.
The Auto Installer menu showing where WordPress is and where to press Select in hPanel

  1. Insert the website credentials. To set up the installation path and database, click Advanced. Once done, click Next.
The Install WordPress page showing where to insert website credentials and where to press Next in hPanel

  1. Select the application version and language. In this example, we’re choosing 6.1.1 and English. Lastly, choose the update schedule. For this example, we’ll select Update only to minor version (Recommended) and click Install.
The Install WordPress page showing where to choose the CMS version and language and where to press Install in hPanel

  1. That’s it – WordPress is installed successfully.
WordPress installation in hPanel

How to Install WordPress With Softaculous App Installer on a cPanel

Follow these steps to install WordPress using cPanel’s Softaculous App Installer:

  1. Go to cPanel and open the Softaculous App Installer.
  2. You’ll find WordPress listed on the Top Scripts page once Softaculous App Installer opens and click Install. Alternatively, type in WordPress in the top-left Search bar, press Enter, and select Install Now.
The Top Scripts page on Softaculous App Installer showing where WordPress is and where to click Install

  1. If you want to customize the installation, type in WordPress in the top-left Search bar and press Enter. Click the down arrow next to the Install tab and choose Custom Install.
The WordPress page on Softaculous App Installer showing where the Install tab is and where to choose Custom Install

  1. Fill in the required information and select Install.
WordPress Software Setup page on Softaculous App Installer

  1. Now, you should get a message that WordPress has been successfully installed.
A new WordPress installation on Softaculous App Installer

How to Host a Website Locally on Your Computer

In addition to using hosting platforms, you can build a site locally on a computer to explore and customize your own server. Also known as “self-hosting,” it is a safe environment to test features, functionality, and troubleshooting methods.

To build a local server, you may need to spend a lot of time downloading and setting up different software. Moreover, it is accessible only to people on the same network since it’s not live on the web.

The following sections will show you how to create a locally-hosted website on Windows, Linux, and macOS.

Windows Using WAMP

Follow these instructions to create a WordPress site on your own computer using WAMP:

  1. Download and install WAMP.
  2. Upon installation, a WAMP icon will appear on the system tray.
  3. Download WordPress from the official website.
  4. Extract the downloaded ZIP file.
  5. Copy the entire content, and paste it to the www folder inside the WAMP directory.
  6. You can rename the WordPress folder as you like, as it will be used as the website address. In this example, we’re using samplesite.
  7. Type the URL http://localhost/samplesite on your browser and select the language preference.
  8. The following step requires you to enter the database credentials. Therefore, click the WAMP icon and select phpMyAdmin
  9. Log in to phpMyAdmin by entering root as the Username and keep the Password blank. Click Go to continue.
  10. Select the Databases tab, type in the new database name, and choose Create.
  11. Go to the WordPress installation page to insert the database credentials and click Submit.
  12. Once the system recognizes the information, choose Run the installation.
  13. Enter the WordPress website information and click Install WordPress.
  14. Log in to verify the admin credentials and access the website by typing http://localhost/samplesite.

Linux Using LAMP

Here’s how to host your own website locally using LAMP on Ubuntu:

  1. Run these commands to install the Apache web server:

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install apache2 apache2-utils

  1. Activate the Apache2 web server by running the following commands subsequently:

sudo systemctl enable apache2

sudo systemctl start apache2

sudo systemctl status apache2

  1. Allow the HTTP traffic on ufw by entering:

sudo ufw allow in “Apache”

  1. Install MySQL server by running:

sudo apt-get install mysql-client mysql-server

  1. Enter the following command to install PHP:

sudo apt-get install php libapache2-mod-php php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

  1. Create an info.php file inside var/www/html by running the below command:

sudo vi var/www/html/info.php

  1. Add these codes to the info.php file:

phpinfo();

?>

  1. Download and extract the WordPress website files by entering these commands:

wget -c http://wordpress.org/latest.tar.gz

tar -xzvf latest.tar.gz

  1. To move the website’s files to the Apache root directory, enter:

sudo mv wordpress/* /var/www/html/

  1. To give the file ownership to the web server, set up the permissions as shown below:

sudo chown -R www-data:www-data /var/www/html/

sudo chmod -R 755 /var/www/html

  1. Open the MySQL shell using the root user:

sudo mysql -u root -p

  1. Type in the following commands and press Enter after each line to create a new database:

CREATE DATABASE sample_site;

CREATE USER admin IDENTIFIED WITH ‘admin-password’;

GRANT ALL ON sample_site.* TO admin;

FLUSH PRIVILEGES;

EXIT;

  1. Go to the var/www/html/ directory to rename examplewp-config.php to wp-config.php and remove the default Apache index page.

cd /var/www/html/

sudo mv examplewp-config.php wp-config.php

sudo rm -rf index.html

  1. Update the database credentials on the MySQL settings and save changes.

/var/www/html gedit wp-config.php

  1. Go to http://localhost/wordpress, complete the site information, and click Install WordPress.
  2. Log in to WordPress to check whether the installation is successful.

macOS Using XAMPP

Follow these steps to create a locally-hosted WordPress site using XAMPP:

  1. Download XAMPP on the Apache Friends site and choose the DMG extension.
  2. Upon installation, a XAMPP menu will appear. Select Manage Servers and ensure every element is green.
  3. Download WordPress, extract the files, and copy them to the XAMPP folder. In this example, we’re naming it wptest.
  4. Go to http://localhost to open the XAMPP default page and select phpMyAdmin.
  5. Click the Databases tab and insert the new database name. Once done, click Create.
  6. Go to the testing site http://localhost/wptest and click Let’s go!
  7. Enter the database credentials and choose Submit.
  8. In case you haven’t created the wp-config.php file, the next page displays the code. Copy it and click Run the installation.
  9. Open the WordPress folder, insert the code you’ve copied to a .php file, and rename it to wp-config.php.
  10. Go back to the testing page, enter the site information, and choose Install WordPress.
  11. Log in to open the WordPress dashboard to make sure the installation is complete.

How to Point a Domain to Your Website

Depending on your hosting type, there are three ways to point a domain name to a host: using nameservers, A records, or a localhost’s IP address.

Nameservers for Shared Hosting

To point the domain to the correct shared server, add the nameservers provided by the hosting provider in the DNS configuration. During the propagation process, your website may be unavailable for up to 48 hours.

A Records for VPS

Records contain the IP address for pointing the domain name to the correct server. To change it, you need to replace the old IP address with the one given by the hosting company you choose.

Most of the time, you need to create two A records – one with the www subdomain and another without it. After the propagation process, your website will be accessible online.

Localhost IP Address for Self-Hosting

To make a local website accessible over a network, you need to modify the computer’s host file. Enter the following line at the end of the file.

127.0.0.1 domain-name

Once done, save the changes.

Conclusion

You can host your own website in three simple steps – pick a hosting type and provider, purchase a domain name, and upload your site. With the first one, you need to consider the six most important factors – the server location, support, features, feedback, and hosting type.

Once you’ve picked the best hosting company for your needs, it’s time to install the website on your web host account. However, if you want the site to be a testing ground, it’s best to host it locally on your computer.

We hope this article has helped you learn how to host a website. If you have any questions or suggestions, leave them in the comments section below.

Frequently Asked Questions (FAQ) About Hosting a Website

Here are the most asked questions about hosting a site.

What Is Web Hosting?

Web hosting is an online service that enables you to publish a website’s content on the internet, making it accessible to other people. When you sign up for it, you rent server space from a hosting company to store files and code.

How to Host a Website for Free?

Some web hosting platforms, such as 000webhost, Wix, and Weebly, let users host their websites for free. However, this hosting service typically lacks customer support and provides very limited control over your server.

How Much Does It Cost to Host a Website?

The cost of hosting a web page varies depending on the hosting provider and the chosen type. For instance, shared hosting can range from $1–$5 per month, while cloud hosting can start at $10–$200 per month.

How to Host a Website With a Domain Name?

To use a domain as the website address, you need to configure the DNS settings. For shared hosting, you can use nameservers provided by the web hosting company. On the other hand, VPS users need to add A records or child nameservers. If you host the website locally, add a public IP address to the host configuration on your computer.

How to Host a Website Without Your Domain Name?

To access a website without a domain name, choose a hosting plan with a dedicated IP address, such as VPS or dedicated servers. This way, the browser will direct visitors to your site once they enter the IP address.

What Is FTP?

File Transfer Protocol (FTP) is used for data communication and transmitting files between computers over the Transmission Control Protocol/Internet Protocol (TCP/IP) connections. 

What Is a File Manager?

File manager is a computer program for creating, removing, modifying, and managing files and folders. It comes with a beginner-friendly user interface that helps to navigate around the software easily. Most hosting companies include a file manager in their web hosting plans.

What Is a Domain Name?

A domain name is a string of text that replaces a numeric IP address to help visitors find the site easily. It identifies a network or IP resource, including a computer or server. To get it, you need to register the name with a domain registrar.

How Do Domain and Hosting Work?

Once you enter a domain name into a browser, it sends a request to DNS servers. They will look for any records associated with the site and send the instructions to the nameservers. Next, the hosting company will forward the request to the website’s server.

The server returns to the browser with all the requested data, including files, databases, HTML, and CSS. Finally, the browser converts that information to an accessible web page.


Ready to hire? Our marketplace of over 410,000 diverse freelancers has the skills and expertise needed to skyrocket your business. From marketers to designers, copywriters to SEO experts – browse the talented bunch here!

Hostinger

Hostinger has been on a mission since its founding in 2011 to provide hosting services that make life easier for developers and their customers. They maintain their promise by regularly updating server technology, enhancing customer service, and fine-tuning their custom-built hPanel.


Fatal error

: Uncaught Error: Call to undefined function Smush\Core\Parser\str_starts_with() in /var/www/html/wordpress/wp-content/plugins/wp-smush-pro/core/parser/class-image-url.php:119 Stack trace: #0 /var/www/html/wordpress/wp-content/plugins/wp-smush-pro/core/parser/class-image-url.php(98): Smush\Core\Parser\Image_URL->is_scheme_missing_from_original() #1 /var/www/html/wordpress/wp-content/plugins/wp-smush-pro/core/parser/class-image-url.php(91): Smush\Core\Parser\Image_URL->prepare_absolute_url() #2 /var/www/html/wordpress/wp-content/plugins/wp-smush-pro/core/lazy-load/class-lazy-load-transform.php(352): Smush\Core\Parser\Image_URL->get_absolute_url() #3 /var/www/html/wordpress/wp-content/plugins/wp-smush-pro/core/lazy-load/class-lazy-load-transform.php(312): Smush\Core\Lazy_Load\Lazy_Load_Transform->maybe_lazy_load_image_element() #4 /var/www/html/wordpress/wp-content/plugins/wp-smush-pro/core/lazy-load/class-lazy-load-transform.php(304): Smush\Core\Lazy_Load\Lazy_Load_Transform->transform_image_element() #5 /var/ww in /var/www/html/wordpress/wp-content/plugins/wp-smush-pro/core/parser/class-image-url.php on line 119