Home Ubuntu How to install Apache Web Server on Ubuntu 18.10

How to install Apache Web Server on Ubuntu 18.10

by Darshana
Published: Updated:
Installing apache webserver

Apache HTTP server is an immensely popular cross-platform web server that’s used worldwide. It is a free, open-source, powerful, and can run on UNIX/Linux as well as MS Windows platforms.

Notable features include the ability to allow the server to serve more concurrent requests due to Multi-Processing Module (MPM) and integrated proxy module support for the FastCGI protocol, asynchronous read and write handling, and significant integration with different application/software, various modules, etc. It also supports embedded Lua scripting. It’s not just a web server. It also works as a reverse proxy for other web servers.

Installing Apache Web Server on Ubuntu 18.10

Official Ubuntu software repositories come with Apache and its dependencies. Hence, it’s simpler to update the system’s package index and then use the APT package manager to install the Apache package and its dependencies.

Step 1) Launch Terminal and enter the following command to update the system.

sudo apt-get update

Step 2) Check available Apache version on Ubuntu repository

sudo apt-cache policy apache2
Check available Apache Version

Check available Apache Version

Step 3) Install apache2

sudo apt-get install apache2
Install Apache

Install Apache

Step 4) It will ask, “do you want to continue.” Type Y.

Step 5) Normally, the Apache service should be started automatically. We can check the apache status.

sudo systemctl status apache2.service


Starting and managing Apache Services

Apache services can be managed by using the following commands:

To start Apache2 service

sudo systemctl start apache2

To stop Apache2 Service

sudo systemctl stop apache2

To Restart Apache2 Service

sudo systemctl restart apache2

To Reload Apache2 service after configuration changes

sudo systemctl reload apache2

Enable Apache2 service to start at boot

sudo systemctl enable apache2

Disable Apache2 on boot

sudo  systemctl disable apache2

Checking UFW Firewall

If you have the UFW firewall enabled, you need to open port 80 and 443. This is because the Apache webserver gets client requests via HTTP and HTTPS. Check UFW status by entering the following command:

sudo systemctl status ufw.service
Checking UFW status

Checking UFW status

Now you can allow ports 80 and 443 as follows:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw  reload
Allowing Ports

Allowing Ports

By chance, if you see a message “Firewall not enabled (skipping reload)”  at the reload UFW command, edit “ufw.conf” file using VIM command as follows:

sudo  vim /etc/ufw/ufw.conf
Editing Conf

Editing Conf

Change ENABLED=no to ENABLED=yes
save and exit file using: wq

Here is how the final edited file will look like:

Edited Conf

Edited Conf

Now try to reload Firewall again. It should work without issue this time.

sudo ufw  reload
UFW Reload

UFW Reload

Checking the Apache installation

To check the Apache installation running status, launch the browser using hostname/server IP address:



Using server Ip (Your server IP)

This is the Apache default page, and if you can see this, it means your apache server is working well.

Apache2 default page

Apache2 default page

Additional Note:- Main directories of Apache can be classified as follows

Web DocumentRoot: /var/www/html/
Main config files directory: /etc/apache2/
Main config file: /etc/apache2/apache2.conf
Additional configuration : /etc/apache2/conf-available/ and /etc/apache2/conf-enabled/
Virtual hosts configuration : /etc/apache2/sites-available/ and /etc/apache2/sites-enabled/
Configuration  for loading modules: /etc/apache2/mods-available/ and /etc/apache2/mods-enabled/
Log files directory: /var/log/apache2/

I hope it worked well for you. Got any questions? Shoot below.

You may also like


cee November 1, 2019 - 10:08 AM

But my index.php is showing as clear text on the server!
(even though I’ve installed php)

Darshana November 1, 2019 - 11:37 PM

May be you are missing PHP library for Apache
Try this according to your php Version
1. apt-cache policy libapache2-mod-php*
Then it will say installed or not and show available packages
2 . apt-get install libapache2-mod-php7.2 (with your php version)


Leave a Comment



FOSS Linux is a leading resource for Linux enthusiasts and professionals alike. With a focus on providing the best Linux tutorials, open-source apps, news, and reviews written by team of expert authors. FOSS Linux is the go-to source for all things Linux.

Whether you’re a beginner or an experienced user, FOSS Linux has something for everyone.

Follow Us


©2016-2023 FOSS LINUX



“Linux” is the registered trademark by Linus Torvalds in the U.S. and other countries.