|
Oracle® HTTP Server Administrator's Guide
10g (9.0.4) Part No. B10381-02 |
|
|
|
|
This chapter describes the Oracle HTTP Server, highlighting the differences between the Oracle distribution and the open source Apache product on which it is based. It also explains how to start, stop and restart the server.
Topics discussed are:
Documentation from the Apache Software Foundation is referenced when applicable.
|
Note: Readers using this guide in PDF or hard copy formats will be unable to access third-party documentation, which Oracle provides in HTML format only. To access the third-party documentation referenced in this guide, use the HTML version of this guide and click on the hyperlinks. |
Oracle HTTP Server is the Web server component of Oracle Application Server. It is based on the Apache HTTP Server, version 1.3.28. It is a robust, reliable Web server, pre-configured to do the following:
provide a high availability infrastructure integration with Oracle Process Manager and Notification Server (OPMN), for process management, death detection and failover for OC4J and Oracle HTTP Server processes.
provide Dynamic Monitoring Services (DMS) metrics that give runtime performance statistics for both Oracle HTTP Server and OC4J processes. As applications run, DMS collects detailed performance statistics. This data allows you to monitor the duration of important request processing phases and status information. With this information, you can locate performance bottlenecks and tune the application server to maximize throughput and minimize response time.
provide a request ID, which enhances request tracking through various components by attaching a request ID to each request. This provides more detailed information, allowing you to see how much time a particular request spends in any component or layer.
integrate with single sign-on capability through Oracle Application Server Single Sign-On.
enable securing of transactions with Secure Sockets Layer (SSL) technology.
execute Perl scripts in the same process as the Oracle HTTP Server, or as CGI script.
access database stored procedures with a PL/SQL engine.
enable scripting of HTML pages with PL/SQL code.
support legacy use of Apache JServ, including a process management and death detection module (mod_oprocmgr).
provide proxy plug-in for non-Oracle HTTP listeners.
Oracle HTTP Server consists of several components that run within the same process. These components provide the extensive list of features that Oracle HTTP Server offers when handling client requests. Following are the major components:
HTTP Listener: Oracle HTTP Server is based on an Apache HTTP listener to serve client requests. An HTTP server listener handles incoming requests and routes them to the appropriate processing utility.
Modules (mods): Many of the standard Apache modules are included with Oracle HTTP Server. Oracle also includes several internal modules that are specific to Oracle Application Server components.
|
See Also: "Oracle HTTP Server Modules" for a complete list of modules shipped with Oracle HTTP Server. |
Perl Interpreter: A persistent Perl runtime environment embedded in Oracle HTTP Server through mod_perl.
Figure 1-1 shows the path of various requests through Oracle HTTP Server components, where a client machine connects to Oracle Application Server Web Cache, which in turn connects to Oracle HTTP Server. Oracle HTTP Server, using various modules, connects to the database through OC4J, FastCGI, or the Perl interpreter.
|
See Also: Oracle Application Server 10g Concepts for more information regarding Oracle Application Server components, and how they relate to each other. |
Table 1-1 identifies the modules shipped with Oracle HTTP Server. Modules extend the basic functionality of the Web server, and support integration between Oracle HTTP Server and other Oracle Application Server components. Note that the list differs from the Apache open source distribution (given the inclusion of Oracle modules), and that not all modules are supported by Oracle.
Table 1-1 Oracle HTTP Server Modules
| Module | Oracle Support | Notes |
|---|---|---|
| mod_access
|
Yes |
|
| mod_actions
|
Yes |
|
| mod_alias
|
Yes |
|
| mod_asis
|
No |
|
| mod_auth
|
Yes |
|
| mod_auth_anon
|
Yes |
|
| mod_auth_db
|
No | Disabled. Not shipped by Oracle. |
| mod_auth_dbm
|
No |
|
| mod_auth_digest
|
No | Disabled. Experimental MD5 authentication; not shipped by Oracle. |
| mod_autoindex
|
Yes |
|
| mod_cern_meta
|
No |
|
| mod_certheaders
|
Yes |
|
| mod_cgi
|
Yes |
|
| mod_define
|
Yes | UNIX systems only. |
| mod_digest
|
Yes |
|
| mod_dir
|
Yes |
|
| mod_dms
|
Yes | Oracle module. |
| mod_env
|
Yes |
|
| mod_example
|
No |
|
| mod_expires
|
Yes |
|
| mod_fastcgi
|
Yes |
|
| mod_headers
|
Yes |
|
| mod_imap
|
No |
|
| mod_include
|
Yes |
|
| mod_info
|
Yes |
|
| mod_isapi
|
No | Windows systems only. Not shipped by Oracle |
| mod_jserv
|
Yes | Disabled by default in Oracle configuration. |
| mod_log_agent
|
No | Deprecated. |
| mod_log_config
|
Yes |
|
| mod_log_referer
|
Yes | Deprecated. |
| mod_mime
|
Yes |
|
| mod_mime_magic
|
Yes |
|
| mod_mmap_static
|
No |
|
| mod_negotiation
|
Yes |
|
| mod_oc4j
|
Yes | Oracle module. Recommended servlet container; enabled by default in Oracle configuration. |
| mod_onsint
|
Yes | Oracle module. |
| mod_oprocmgr
|
Yes | Oracle module. |
| mod_oradav
|
Yes | Oracle module. |
| mod_ossl
|
Yes | Oracle module. |
| mod_osso
|
Yes | Oracle module. |
| mod_perl
|
Yes |
|
| mod_plsql
|
Yes | Oracle module. |
| mod_proxy
|
Yes |
|
| mod_rewrite
|
Yes |
|
| mod_setenvif
|
Yes |
|
| mod_so
|
Yes |
|
| mod_status
|
Yes |
|
| mod_unique_id
|
Yes |
|
| mod_userdir
|
Yes |
|
| mod_usertrack
|
Yes |
|
| mod_vhost_alias
|
Yes |
|
| mod_wchandshake
|
Yes |
|
Oracle provides technical support for the following Oracle HTTP Server features and conditions:
Modules included in the Oracle distribution, except as noted in the table in Table 1-1, "Oracle HTTP Server Modules". Modules from any other source, including the Apache Software Foundation, are not supported by Oracle.
Problems that can be reproduced within an Apache configuration consisting only of supported Oracle Apache modules.
Use of the included Perl interpreter within the supported Apache configuration.
Oracle HTTP Server can be managed using the following two methods:
You can manage Oracle HTTP Server using Oracle Enterprise Manager 10g. Oracle Enterprise Manager 10g enables you to manage your server from a Web browser using Oracle Enterprise Manager 10g Application Server Control Console (Application Server Control Console).
|
See Also:
|
You can use also the following command-line tools to manage Oracle HTTP Server:
Provides a command-line utility for Oracle Process Manager and Notification Server (OPMN) for process management. It is located in
UNIX: ORACLE_HOME/opmn/bin
Windows: ORACLE_HOME\opmn\bin
|
See Also: Oracle Process Manager and Notification Server Administrator’s Guide for more information onopmnctl.
|
Provides a command-line utility for Distributed Configuration Management (DCM) for configuration management and application deployment. It is located in
UNIX: ORACLE_HOME/dcm/bin
Windows: ORACLE_HOME\dcm\bin
You must use the DCM utility dcmctl in circumstances such as:
Managing clusters and farms of Oracle Application Server instances. Manage the configuration of individual components, such as OC4J, Oracle HTTP Server instances, and Oracle Process Manager and Notification Server, or Java Authentication and Authorization Service.
Performing cluster-wide OC4J application deployment.
Managing versions of configuration with archive, save and restore, and import and export functions.
|
See Also: Distributed Configuration Management Reference Guide for detailed information regardingdcmctl and the commands required to perform the above mentioned tasks.
|
Oracle HTTP Server is managed by Oracle Process Manager and Notification Server (OPMN). You can use Oracle Enterprise Manager 10g Application Server Control Console to start, stop, and restart the server.
For command-line management, you can use the opmnctl utility to start, stop, and restart the server.
You must always use OPMN to start, stop and restart Oracle HTTP Server. Otherwise, the configuration management infrastructure cannot detect or communicate with the Oracle HTTP Server processes, and problems may occur.
To determine the state of Oracle HTTP Server, use the following command:
opmnctl status
The processes are listed with their current state (Up, Down, etc.)
To start Oracle HTTP Server, use the startproc command:
UNIX: ORACLE_HOME/opmn/bin> opmnctl [verbose] startproc ias-component=HTTP_Server
Windows: ORACLE_HOME\opmn\bin> opmnctl [verbose] startproc ias-component=HTTP_Server
To stop Oracle HTTP Server, use the stopproc command:
UNIX: ORACLE_HOME/opmn/bin> opmnctl [verbose] stopproc ias-component=HTTP_Server
Windows: ORACLE_HOME\opmn\bin> opmnctl [verbose] stopproc ias-component=HTTP_Server
Restarting Oracle HTTP Server performs a graceful restart, which is invisible to clients. In a graceful restart, on UNIX, a USR1 signal is sent. When the process receives this signal, it tells the children to exit after processing the current request. (Children that are not servicing requests exit immediately.)
The parent re-reads the configuration files and re-opens the log files, replacing the children with new children in accordance with the settings it finds when re-reading the configuration files. It always observes the process creation settings (MaxClients, MaxSpareServers, MinSpareServers) specified, and takes the current server load into account.
To restart Oracle HTTP Server, use the restartproc command:
UNIX: ORACLE_HOME/opmn/bin> opmnctl [verbose] restartproc ias-component=HTTP_Server
Windows: ORACLE_HOME\opmn\bin> opmnctl [verbose] restartproc ias-component=HTTP_Server
|
See Also: Oracle Process Manager and Notification Server Administrator’s Guide for more information onopmnctl command options.
|