How to Set up an Apache Server on Linux

Programming, Website Development

I’m going to set up Apache on my desktop. It’s going to be a pain in the ass. I might as well document the experience here.

What is Apache?

Apache is a web server program. Following the butler-and-house metaphor from my post on website ownership, Apache is the hollow shell of the butler. When you write a program to control the butler (your website), you will store them on the Apache server.

If I understand correctly, installing and configuring Apache on my computer will allow me to use my desktop as a website server. I will still need to buy a domain name in order to make that website accessible from the Internet.

Getting Apache

The first step should be downloading and installing Apache. According to Andy Kahn, this is as simple as going to and downloading the source distribution file.

Andy’s instructions are about 12 years old, and it looks like the Apache website has evolved significantly since his heyday. The homepage is an extremely noisy mess of ‘Latest News’es and ‘Latest Activity’es and what-have-you-es.

Hidden away in the upper-right-hand corner is a promising button called Download. Eureka!

Not quite. Rather than the big shiny ‘Download’ button I was hoping to find, the Download page is a list of mirrors. Annoying… but at the top of the page they list a recommended mirror, so let’s click on that.

Uh oh. That takes you to a huge list of directories. The page explains that these “contain current software releases from the Apache Software Foundation projects.” All of them do? How many versions of Apache do you need?

This is getting too painful. Trying a different approach…

Getting Apache, Take 2

So instead of trying to be smart about things, I’ve decided to ask Google to do my thinking for me. Googling “how to set up ubuntu desktop as a web server” led me to a very promising guide.

Following their instructions exactly… works! It’s nice when things work. I ignored the section on phpMyAdmin because I want to learn to use MySQL.

In Summary

I now have a working Apache server on my desktop. Stay tuned to see what I end up doing with it…


I found some more useful instructions. This describes some security measures that might be worth employing, as well as how to give you user account permission to write into the website without sudo-ing in every time.

I’m now running a website that is accessible over the Internet. Cool.

The only problem now is that I still don’t have a domain name. You can still find my website online, though, but only if you know that my IP address is (and only as long as the remains my IP address – ISPs change your address periodically).

I’ll work on setting up some work-around for this. If I can manage it, then I’ll have a working and useful website for free!


2 thoughts on “How to Set up an Apache Server on Linux

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s