Installing and Configuring Apache HTTP Server on a Linux Host

30 minutes
  • 5 Learning Objectives

About this Hands-on Lab

Installing common system services like the Apache HTTP Server is a large function of being a system administrator. In this hands-on lab, you will be tasked with installing Apache HTTP Server and configuring it to meet the requirements specified. This includes configuring it to be persistent through system reboots and making sure that it adheres to standard system and network security.

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Install the Apache HTTP Server
  • Install the httpd package.
Modify the httpd.conf File
  • Update the document root in httpd.conf to point to the /web_content directory.
  • Add a directory tag for the /web_content directory, using the directory tag for /var/www as a template.
Create the /web_content Directory and Update Its SELinux Security Context
  • Create the /web_content directory.
  • Update the SELinux file context mapping for /web_content to match /var/www/html (this should persist through a file system relabel).
  • Restore the default security context for the /web_content directory.
Update Firewalld to Allow Access to the httpd Service
  • Add the HTTP and HTTPS services to the default zone in firewalld (this should persist through a reboot).
  • Reload the firewall rules to apply them to the current session.
Start and Enable the Apache HTTP Server
  • Start and enable httpd.
  • (Optional) Test the web server by adding a simple index.html file to the /web_content directory.
  • (Optional) Use a browser to access the web server URL.

Additional Resources

You work as a system administrator for a marketing company and have been tasked with installing and configuring Apache HTTP Server for the web content team.

To complete this task, you will need to install the httpd package. Once installed, update the httpd.conf file to point to /web_content as the new DocumentRoot, and add a directory tag for /web_content to loosen the restrictions. Then, create the /web_content directory, update the SELinux security context, and add the HTTP and HTTPS services to the default zone in firewalld. Finally, start and enable the httpd service.


  • All tasks should be performed as the cloud_user.
  • The cloud_user has been given sudo access to perform the required tasks.

What are Hands-on Labs

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Sign In
Welcome Back!

Psst…this one if you’ve been moved to ACG!

Get Started
Who’s going to be learning?