5.2 Oracle-Supplied Modules

   

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.

What About Apache 2.0?

Those of you who are Apache administrators may be asking why Oracle is using the Apache Version 1.3 code base and not the Apache 2.0 code base. The reason is that at the time Oracle Application Server was first in the works (back in 2001), Apache 2.0 didn't even exist. Oracle decided to use Apache Version 1.3 because, at that time, "it proved highly reliable, secure, and had great performance characteristics." [1] Apache Version 2.0 was released for production in April of 2002. Although it offers improved performance and important new features (e.g., support for IPv6), Oracle has stated that it is still "less reliable and has more security vulnerabilities than Version 1.3." Oracle's current plans are to use Apache 2.0 on Release 10.0.4 of Oracle Application Server, provided that Apache 2.0 is appropriately secure and defect-free at that time.


[1] A quote from one of Oracle's Statement of Direction documents for Oracle Application Server.

5.2.1 Third-Party Modules

Oracle includes the following third-party modules that aren't part of the standard Apache distribution:

mod_fastcgi
mod_perl
mod_jserv

The following sections briefly describe these modules.

5.2.1.1 mod_fastcgi

mod_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_perl

mod_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_jserv

mod_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 Modules

Oracle also has a set of its own modules that add functionality to the Oracle HTTP Server:


mod_certheaders

Provides OracleAS Web Cache and load-balancing hardware SSL termination at the Oracle HTTP Server


mod_oc4j and mod_plsql

Provide dynamic content generation


mod_oradav

Provides Web Distributed Authoring and Versioning (WebDAV) support


mod_ossl and mod_osso

Provide security services


mod_dms , mod_oprocmgr , and mod_onsint

Provide Oracle Application Server management integration

5.2.2.1 mod_certheaders

mod_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_oc4j

mod_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_plsql

mod_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:


cache.conf

Configures mod_plsql 's PL/SQL cache


dads.conf

Contains URL mapping directives with connection information in the form of database access descriptors (DADs) that are automatically used by mod_plsql to log into an Oracle database


plsql.conf

Contains directives to load mod_plsql and to set its logging location

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_oradav

mod_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_ossl

mod_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_osso

mod_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_dms

mod_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_oprocmgr

mod_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_onsint

mod_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.

   


Oracle Application Server 10g Essentials
Oracle Application Server 10g Essentials
ISBN: 0596006217
EAN: 2147483647
Year: 2004
Pages: 120

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net