How to install Apache Http server on Ubuntu
There is two ways to install Apache Http server on Ubuntu :
- Use apt command to install it automatically.
- 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.
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
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 🙂
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 :(.
Did you get any solution? I am facing the same issue
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 ???
You need to: apt-get install build-essentials
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?
when ever i use the tar comand I It returns no such file. do I have to download to a specific directoy?
I have been getting invaluable help from your site.
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?
i am getting error APR not installed how to do it???
Thank you for this guide. You should also paste some link for post installation configuration needed if apache is installed manually.
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?
For manual way, you have to compile or make or build the source explicitly, see above steps.