Starting and Stopping the Server
The procedure for starting and stopping the
Apache Web server is no different from that of many other server processes. You
can use the chkconfig command to set the httpd service to start at
boot time.
The /etc/init.d/httpd shell script
accepts any of five command-line arguments. If it is called with the argument start,
the httpd script will run one master daemon process (owned by
"root"), which will spawn other daemon processes (equal to the number
specified by the StartServers directive) owned by the
user apache (from the User andGroup directives). These
processes are responsible for responding to incoming HTTP requests. If called
with stop, the server will be shut down as all httpd processes
are terminated.
If given a command-line argument
of restart, the script will simply
execute stop and start procedures in sequence.
Using reload as the argument will send the hangup signal (-HUP) to
the master httpd daemon, which causes it to reread its configuration
files and restart all the other httpd daemon processes. The shell
script also supports an argument of status, which will report if the
daemon is running and, if it is, the PIDs of the running processes. All other
command-line arguments result in an error and cause a usage message to be
printed.
Monitoring Server Activities
Apache provides two unique built-in methods to
check the performance of your Web server. The server-status handler can be
configured to show information about server processes. The server-info handler
can be configured to display a detailed summary of the Web server's
configuration. You can activate these services by adding the following lines to
the /etc/httpd/conf/httpd.conf file, respectively:
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from handsonhistory.com
</Location>
<Location /server-info>
SetHandler server-info
Order deny,allow
Deny
from all
Allow from handsonhistory.com
</Location>
In this example, all computers in
the handsonhistory.com domain can display the server-info and
server-status pages. You can changehandsonhistory.com to the name of any
domain or host that your Apache server is hosting.
Displaying server information
The Server Information (server-info) page
contains the server version information and various general configuration
parameters and breaks up the rest of the data by module. Each loaded module is
listed, with information about all directives supported by that module, and the
current value of any defined directives from that module.
The Server Information is usually quite
verbose and contains much more information than can be displayed in Figure
21-3, which shows only the links to each module's section and the general
Server Settings section.
Figure 21-3: The server-info page displays server and module information.
Displaying server status
The contents of the server-status page include
version information for the server, the current time, a timestamp of when the
server was last started, and the server's uptime. The page also details the
status of each server process, choosing from several possible states (waiting
for a connection, just starting up, reading a request, sending a reply, waiting
to read a request before reaching the number of seconds defined in the KeepAliveTimeout,
performing a DNS lookup, logging a transaction, or gracefully exiting).
The bottom of the server-status page lists
each server by process ID (PID) and indicates its state, using the same
possible values. Figure 21-4 is an example of this page.
Figure 21-4: The Apache server-status page displays general Apache information and reports on individual server process activities.
No comments:
Post a Comment