Training, Open Source computer languages

PerlPythonMySQLTclRubyC & C++LuaJavaTomcatPHPhttpdLinux

Search our site for:
Home Accessibility Courses Diary The Mouth Forum Resources Site Map About Us Contact
Configuring Apache httpd

There are two approaches to bundling software for user installation.

"The MicroSoft way" is to use an install wizard that drops each of the elements of the software into the best operational place on the user's system, and configures it there for running straight away.

"The OpenSource way" is to install software into a specific area of the disc so that it can easily be adjusted, configured and experimented with ... without effecting other software on the computer, and giving the installer an "easy out" if he / she wants to try out an alternative.

But neither approach is ideal - I have painted a positive picture above, but I could equally have been negative and pointed out that Microsoft-style software is hard to fully remove later, and that Opensource-style software needs extra work to place certain elements of the software into the best operational areas. There is no ideal.

Yesterday, I was installing Apache httpd (and PHP, and MySQL too!) as part of some LAMP deployment training, and I made a few notes of some of the "gotcha"s / changes from the default install.

1. The server was built with --enable-so as that's a necessary option for the installation of PHP, something that you only discover later on in the process if you don't read right through at the start. (The full line we used was ./configure --enable-so --enable-rewrite --enable-proxy --enable-proxy-http --enable-proxy-balancer with the extra options preinstalled for other topics also to be covered)

2. The User and Group were changed from "daemon" to "apache" which is a daemon account that already exists on Red Hat / Fedora. (This is Apache httpd 2.2.x; under 2.0.x, the defaults of nobody / -1 are much more dangerous that daemon, and the change is all the more critical!) User accounts set up to be in group apache, which is used to set the permissions that the web server has over resources placed on the web site.

3. The Web site itself was moved from the default location in /usr/local/apache2 to /home/websites/default (that latter choice because we we going on to add virtual hosting and have just a tiny default site)

4. Log files moved to /var/log/httpd, and regular timed jobs under crontab set up for log file rotation.

5. apachectl copied to /etc/init.d and symbolic links set up to that file from /etc/rc3.d and /etc/rc5.d (to make the web server start automatically on reboot)

Some other things to note ...

a) You need to install MySQL before you install PHP on your LAMP setup - so that PHP can make use of the MySQL libraries as you load it. And being an Apache module, the PHP install must be after the httpd install.

b) Make sure that you make references to executable files you have just installed with a "dot-slash" in front of their names to run them in the current directory - otherwise you can end up running a version that was provided with the Linux distribution which probably won't be configured / tuned in exactly the way you want. Here's an example showing how forgetting the ./ can lead to the wrong server starting ...

[root@easterton bin]# ./apachectl start
[root@easterton bin]# ps aux | grep httpd
root 4144 0.0 0.1 4236 1944 ? Ss 10:04 0:00 /usr/local/apache2/bin/httpd -k start
apache 4145 0.0 0.1 4236 1408 ? S 10:04 0:00 /usr/local/apache2/bin/httpd -k start
apache 4146 0.0 0.1 4236 1408 ? S 10:04 0:00 /usr/local/apache2/bin/httpd -k start
apache 4147 0.0 0.1 4236 1408 ? S 10:04 0:00 /usr/local/apache2/bin/httpd -k start
apache 4148 0.0 0.1 4236 1408 ? S 10:04 0:00 /usr/local/apache2/bin/httpd -k start
apache 4149 0.0 0.1 4236 1408 ? S 10:04 0:00 /usr/local/apache2/bin/httpd -k start
root 4151 0.0 0.0 3916 688 pts/1 S+ 10:04 0:00 grep httpd
[root@easterton bin]# ./apachectl stop
[root@easterton bin]# apachectl start
[root@easterton bin]# ps aux | grep httpd
root 4160 9.6 0.9 24588 9820 ? Ss 10:04 0:00 /usr/sbin/httpd -k start
apache 4161 0.0 0.4 24720 4716 ? S 10:04 0:00 /usr/sbin/httpd -k start
apache 4162 0.0 0.4 24720 4712 ? S 10:04 0:00 /usr/sbin/httpd -k start
apache 4163 0.0 0.4 24720 4712 ? S 10:04 0:00 /usr/sbin/httpd -k start
apache 4164 0.0 0.4 24720 4712 ? S 10:04 0:00 /usr/sbin/httpd -k start
apache 4165 0.0 0.4 24720 4712 ? S 10:04 0:00 /usr/sbin/httpd -k start
apache 4166 0.0 0.4 24720 4712 ? S 10:04 0:00 /usr/sbin/httpd -k start
apache 4167 0.0 0.4 24720 4712 ? S 10:04 0:00 /usr/sbin/httpd -k start
apache 4168 0.0 0.4 24720 4712 ? S 10:04 0:00 /usr/sbin/httpd -k start
root 4170 0.0 0.0 3920 688 pts/1 S+ 10:04 0:00 grep httpd
[root@easterton bin]# which apachectl
/usr/sbin/apachectl
aroot@easterton bin]#

(written 2008-07-12 08:01:52)

 
Associated topics are indexed under
A602 - Web Application Deployment - Apache httpd - Sourcing, Installation, Testing
A603 - Web Application Deployment - Further httpd Configuration

Back to
The Story of Well House Manor
Previous and next
or
Horse's mouth home
Forward to
A Train Service Update for Melksham Party in the Park
Some other Articles
Rapid growth leads to server move
At the Westbury Bypass Enquiry
There is more that one way - Perl
A Train Service Update for Melksham Party in the Park
Configuring Apache httpd
The Story of Well House Manor
Environment variables in Perl / use Env
Finding operating system settings in Perl
Perl ... adding to a list - end, middle, start
Running operating system commands in Perl
1829 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

© WELL HOUSE CONSULTANTS LTD., 2008: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • FAX: 01144 1225 707126 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho