Unpack the file, run "perl Makefile.PL", "make" and then "make install". "make test" does nothing useful at the moment.
Next you need to edit your httpd.conf. Here is a sample configuration where the database user and password is provided.
<Location /dir/> can be anything you want, but it will be used as the schema when executing your pl/sql. Example:
<Location /scott/ >
SetHandler perl-script
PerlHandler Apache::OWA
PerlSetVar DAD oracle_sid:scott:tiger
</Location>
This means that calling "http://server/scott/print_cgi_env" executes the pl/sql procedure "scott.print_cgi_env". If you write:
<Location /scott/ >
SetHandler perl-script
PerlHandler Apache::OWA
PerlSetVar DAD oracle_sid:scott:tiger
PerlSetVar SCHEMA oas_public
</Location>
the same url would now execute "oas_public.cgi_print_env".
Next, a configuration where all users have to log in using HTTP authentication to their Oracle user-id and password, and applications are executed under their user-id in the database, but the schema works the same as above. This means that they need execute permissions on the application, proper synonyms set up and "create session" priveliges.
<Location /ows_db_auth/ >
AuthName ows_db_auth
AuthType Basic
PerlAuthenHandler Apache::OWA
Require valid-user
PerlSetVar DB oracle1 # defaults to $ORACLE_SID
PerlSetVar SCHEMA oas_public
PerlSetVar DB_AUTH true
</Location>
The final method is HTTP authentication using a custom database function that takes the username and password as arguments and then returns zero for success and non-zero for failure. The format of the DB_PROC_AUTH variable is: schema.function. Remember that the user in the DAD-string needs permission to execute this function.
<Location /ows_db_proc_auth/*>
AuthName db_proc_auth
AuthType Basic
PerlAuthenHandler Apache::OWA
Require valid-user
PerlSetVar DAD oracle_sid:user:password
PerlSetVar DB_PROC_AUTH user.authen
</Location>
To get verbose errors sent to the browser, use "PerlSetVar DEBUG 1" in your <Location ...>. To debug Apache::OWA itself set DEBUG to 2.
If you're having trouble, you may want to try posting your question to Apache::OWA Support.