I want to install a www server on my machine. So I looked at Apache, which is highly regarded. And free.
I started about 10am.
Installing Apache
First I found out that Apache comes in many flavours. I wanted the one with the
MS FrontPage extensions already installed. That's because this website is written
using FrontPage. Through my friend, the mailing list archives, I found
a reference to the Apache Server
w/FrontPage Module. I just followed the steps listed on that page and installed
it.
But wait! There's more...
I had downloaded that file to /usr/local. Then did the untar via tar -xzf
apache-fp.131.tgz. Next was the make install. That's when I was told:
WARNING: MS FrontPage Extentions require the DES Library
WARNING: Install the DES Library, then build apach-fp
And yes, that is how they spell extensions.
So, off to install DES I went. But I didn't get very far.
8:30pm - What? DES is installed
I've concluded that DES is actually installed. I checked the Recognizing your crypt
mechanism section of the FreeBSD handbook.
From the details on that page, I conclude that DES is installed. Namely, the
following is what I find:
$ cd /usr/lib
$ ls -l /usr/lib/libcrypt*
lrwxr-xr-x 1 bin bin 13 Sep 5 12:50 libcrypt.a ->
libdescrypt.a
lrwxr-xr-x 1 bin bin 18 Sep 5 12:50 libcrypt.so.2.0 ->
libdescrypt.so.2.0
lrwxr-xr-x 1 bin bin 15 Sep 5 12:50 libcrypt_p.a ->
libdescrypt_p.a
So off to the #FreeBSD on irc.ais.net, where the suggestion is made that I install the
ports instead. So, following the Compiling ports from
the Internet section from the FreeBSD
handbook, I started to install the ports version of Apache. For what it's worth,
I was just told that using ports was the lazy way to go. It seems easy enough.
When I've followed the instructions above, I've rarely had a port go wrong.
9:40pm - Apache is installed. How do I run it?
The install has completed. My first task is to find httpd. So I decide to
learn more about the find command. From the manual pages, I discover
that:
find / -name "httpd"
will find all examples of files named "httpd". I find what I want in /usr/local/sbin.
From there I execute the command:
./httpd
The response I get is:
httpd: cannot determine local host name.
Use ServerName to set it manually.
I locate the file /usr/local/etc/apache/httpd.conf and edit it. I
locate the line which contains ServerName. I amend to line to refer to
the FreeBSD box. I restart httpd using the command above.
WOO HOO!
The daemon starts and I get no nasty replies. A quick ps -auwd reveals
that the process is indeed running. I swap to my NT1 box and plug in the IP address
of my FreeBSD box. IT WORKS!
10:00pm - Apache is running. How do I provide access to the outside world?
Well, luckily, I've already tried this one. In my /etc/rc.firewall
file, I've disallowed access to port 80, which is the port for http. I enabled this,
restarted the firewall filters, and all went well.
The next step is to publish something
over there.
Well, that worked. WOO HOO! Apache is up and running!
Like the website? Want to give back? Please visit my wish list!