Main Tutorials

How to install Apache Http server on Ubuntu

There is two ways to install Apache Http server on Ubuntu :

  1. Use apt command to install it automatically.
  2. Configure and build the source code, and install it manually.

1. Install it automatically

1. Search Apache package with “apt-cache search” command


apt-cache search apache

2. Get Apache package name “apache2”, issue the “apt-get” install command. You need “sudo” privileged for this installation.


sudo apt-get install apache2

3. Done, run your favor internet browser, e.g firefox or IE. Type “http://localhost” in your browser’s URL text box.

4. If you see the words “It work!” in your browser, it means Apache is installed on Ubuntu successfully.

Where is Apache Http server installed?
Issue a “find” command to reveal all the Apache folders and files location.


mkyong@mkyong-desktop:~$ sudo find / -name apache2
/var/lock/apache2
/var/run/apache2
/var/log/apache2
/var/cache/apache2
/usr/sbin/apache2
/usr/lib/apache2
/usr/share/doc/apache2
/usr/share/doc/apache2.2-common/examples/apache2
/usr/share/apache2
/usr/share/bug/apache2
/etc/default/apache2
/etc/logrotate.d/apache2
/etc/cron.daily/apache2
/etc/init.d/apache2
/etc/apache2

2. Install it manually

1. Download Apache Http server from Apache website (e.g httpd-2.2.13.tar.gz)

2. Unzip it with “tar” command.


tar xvfz httpd-2.2.13.tar.gz 

3. Configure the folder location with “./configure” command.


 ./configure --prefix=/usr/local/apache --enable-shared=max
Note
The option –prefix is indicate the path where the server will installed, and –enable-shared is activated the load module support, it’s better to turn it on during installation stage for the future extend or customize the functionality without recompiling the server.

4. Build it with “make” command.


make

5. Install it with “install” command, you need “sudo” privileged for this installation.


sudo make install

6. Done, all the Apache http server’s files and folders are located at /usr/local/apache.

Should you install it manually or automatically?

This is really depend on your needs, and also your expertise. The “apt-get” command allocate all the folders structure properly, create start scripts in init.d file and configured many post-installation settings automatically. If you are lazy and do not care about the folder structure, then this is definitely the best choice to go.

However if you want to customize the Apache folder structure during the installation and need full control of what happened in your machine, the manual ways is what you need. For me.. the lazy apt-get install is the faster way to go 🙂

About Author

author image
Founder of Mkyong.com, love Java and open source stuff. Follow him on Twitter. If you like my tutorials, consider make a donation to these charities.

Comments

Subscribe
Notify of
12 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
Surabhi
7 years ago

Thanks for sharing the manual steps. I am trying to do a manual install(since the server I am trying to install in, does not have internet). but I am running into issues. Installation is going fine but I am not able to start the service( it says apache 2 is installed) nor I see configuration files in /etc. I am not getting any error during installation :(.

Harsha
6 years ago
Reply to  Surabhi

Did you get any solution? I am facing the same issue

Sarita
8 years ago

Hi , I am installing Apache2 on Ubuntu manually. But i am getting error while configuring folder location

config.status: creating Makefile

./config.status: line 1077: awk: command not found

config.status: error: could not create Makefile

configure failed for srclib/apr-util

can you please help me ???

?ep
8 years ago
Reply to  Sarita

You need to: apt-get install build-essentials

Alok Singh Mahor
9 years ago

I am successfully able to install and run httpd server with the help of your post.
could you please tell me how to add and enable rewrite module in this manually install httpd server?

Momo Ricotomo
10 years ago

when ever i use the tar comand I It returns no such file. do I have to download to a specific directoy?

Hikmat Dhami
11 years ago

I have been getting invaluable help from your site.

Iñigo
11 years ago

Thanks for the Post, realy useful.

I want to ask for some help, i did the automatic installation, and i can see the “it works” thing, but how can i upload my .html?, Is there a folder where you put it or something?

sanjay
11 years ago

i am getting error APR not installed how to do it???

medicinska oprema
13 years ago

Thank you for this guide. You should also paste some link for post installation configuration needed if apache is installed manually.

Lee Murray
13 years ago

Thanks for this tutorial. I prefer the manual install.

Do you have to compile the source for the manual install or is it possible to just get the binaries and do a manual install then?