FreeBSDwiki:Apache, Controlling
From Ubuntuwiki.net
Want to see if it works? If you just got done installing Apache, first of all, issue a rehash command to reindex your system's PATH. Then let's get started:
ph34r# apachectl start /usr/local/sbin/apachectl start: httpd started
Don't take its word for it, though - sometimes apachectl lies through its teeth. Let's make sure we really do have some httpd processes running:
ph34r# ps ax | grep http 18564 ?? SsJ 0:00.74 /usr/local/sbin/httpd 18566 ?? IJ 0:02.71 /usr/local/sbin/httpd 18567 ?? IJ 0:01.12 /usr/local/sbin/httpd 18568 ?? IJ 0:00.64 /usr/local/sbin/httpd 18569 ?? IJ 0:02.10 /usr/local/sbin/httpd 18570 ?? IJ 0:06.16 /usr/local/sbin/httpd 18612 ?? IJ 0:03.00 /usr/local/sbin/httpd 18621 ?? IJ 0:03.94 /usr/local/sbin/httpd 18639 ?? IJ 0:05.96 /usr/local/sbin/httpd 18644 ?? IJ 0:01.60 /usr/local/sbin/httpd 18645 ?? IJ 0:02.05 /usr/local/sbin/httpd
Okay, good, looks kosher. You're probably going to want Apache to run automatically whenever the server boots, though, right? Well, there are two ways to go about doing that. One way is to edit /etc/rc.conf and set some variables that will then cause the default apache.sh / apache2.sh startup script that the port placed in /usr/local/etc/rc.d to actually do something when the machine starts... but we're not going to talk about that way, because I personally despise forcing the administrator to maintain two files where one would do. So instead, we're just going to write our own script for /usr/local/etc/rc.d that will start Apache all on its lonesome, regardless of what is or isn't in /etc/rc.conf. So make yourself a new script and name it /usr/local/etc/rc.d/apache.sh, and make it look like this:
#!/bin/sh case "$1" in start) /usr/local/sbin/apachectl start > /dev/null && echo -n ' apache' ;; stop) /usr/local/sbin/apachectl stop > /dev/null && echo -n ' apache' ;; *) echo "Usage: `basename $0` {start|stop}" >&2 ;; esac exit 0
Now you'll want to make sure that your new script 1. can get executed when the system starts, and 2. won't get clobbered the next time you upgrade Apache from the ports tree, so make it executable but NOT writeable:
ph34r# chmod 555 /usr/local/etc/rc.d/apache.sh
There you go - now that you've got a handle on starting and stopping Apache, move on to the basics of Configuring Apache.