Oracle supplies some key, additional modules that turn Apache into the Oracle HTTP Server. Oracle has also made minor improvements to the code base in the area of security and other defect fixes. The Oracle HTTP Server installs most but not all of the standard Apache modules. Those removed from Apache are either deprecated or have something to do with authentication. OracleAS Single Sign-On has replaced the removed authentication modules' functionality.
5.2.1 Third-Party ModulesOracle includes the following third-party modules that aren't part of the standard Apache distribution:
The following sections briefly describe these modules. 5.2.1.1 mod_fastcgimod_fastcgi provides an efficient CGI environment that allows C, C++, or any executable program to run in a performant manner. In a FastCGI environment, each program runs in a cached child process. This improves performance over the CGI environment because it avoids the need to recreate a new process for each request. Java and Perl programs can be run via CGI, but OC4J (described in Chapter 6) and mod_perl (described in the next section) provide a better-performing environment for these two programming languages. 5.2.1.2 mod_perlmod_perl provides an efficient and highly integrated Perl environment. Like FastCGI, mod_perl operates more efficiently by caching Perl processes. Unlike CGI, mod_perl provides complete access to Apache's request life cycle API. This capability allows mod_perl programmers to write both web applications and Apache modules using Perl. 5.2.1.3 mod_jservmod_jserv exists solely for legacy Apache Jserv support. Release 9.0.1 of Oracle Application Server used an Oracle-modified version of Apache Jserv as its servlet container. Jserv has long since been replaced by OC4J; mod_jserv will be discontinued with Release 10.1.2. 5.2.2 Oracle ModulesOracle also has a set of its own modules that add functionality to the Oracle HTTP Server:
5.2.2.1 mod_certheadersmod_certheaders enables OracleAS Web Cache and other load-balancing hardware SSL termination at the Oracle HTTP Server. This allows the Oracle HTTP Server to pass SSL information to the other modules. The information is passed using HTTP headers and is then accessible as CGI environment variables . 5.2.2.2 mod_oc4jmod_oc4j routes requests to OC4J using the ajp13 protocol. It allows Oracle Application Server to execute J2EE programs in OC4J in response to a request's URI. The Oracle HTTP Server uses a separate configuration file for mod_oc4j , appropriately named mod_oc4j.conf , that is included into the Oracle HTTP Server's main configuration file httpd.conf . URL mapping directives in mod_oc4j.conf determine which URI requests are forwarded to OC4J. In addition, mapping of context directories (how the URL is mapped into OC4J) and protocol settings are also entered into mod_oc4j.conf . As with all Oracle HTTP Server configuration files, mod_oc4j.conf is modified using Oracle Enterprise Manager Application Server Control. 5.2.2.3 mod_plsqlmod_plsql routes requests to an Oracle database. It executes PL/SQL stored procedures in an Oracle database in response to a request's URI. A stored procedure used in this way is analogous to a CGI program or Java servlet. mod_plsql has three configuration files:
The cache.conf and dads.conf files are included in plsql.conf , which, in turn, is included in oracle_apache.conf . oracle_apache.conf is included in the Oracle HTTP Server's main configuration file httpd.conf . 5.2.2.4 mod_oradavmod_oradav enables distributed authoring and versioning using the WebDAV protocol. mod_oradav can read and write files to either the server's local file system or an Oracle database. mod_oradav has one configuration file, moddav.conf . Directives in this file load the module and map a URI to either a local file system directory or an Oracle database. 5.2.2.5 mod_osslmod_ossl provides Oracle SSL support. This module replaces the OpenSSL module mod_ssl . Oracle's implementation of SSL supports SSL Version 3.0, based on Certicom and RSA technology. 5.2.2.6 mod_ossomod_osso enables OracleAS Single Sign-On support. With OracleAS Single Sign-On, a user can use the same authentication credentials to log into all applications supported by the same OracleAS Single Sign-On server. 5.2.2.7 mod_dmsmod_dms provides a hook into Oracle's Dynamic Monitoring Service. DMS measures runtime performance statistics for the Oracle HTTP Server and OC4J. 5.2.2.8 mod_oprocmgrmod_oprocmgr provides legacy support for Oracle-modified Apache Jserv (servlet container) and provides a hook into DMS. It will be discontinued with release 10.1.2. 5.2.2.9 mod_onsintmod_onsint provides a hook into the Oracle Notification Server (ONS), which is a component of the Oracle Process Manager and Notification Server. OPMN starts, stops, and ensures that the Oracle HTTP Server and OC4J are up and running. OPMN provides fault tolerance by restarting an Apache process if it fails. |