OCI-c: ORDS redirection and logging

The below is applicable to the ORDS instance running out of DBCS instance running on OCI-classic, on a customized version of ORDS 3.0. For OCI or 18.x version of ORDS, check out this note.

To customize ords by adding logfile and redirection capabilities, for example from ‘/’ to ‘/ords/apps/f?p=100 where is the workspace where the application 100 is running, proceed as follow:

#1 Create or update the file /u01/app/oracle/product/ords/conf/ords/standalone/etc/jetty-http.xml to add the following:

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure id="Server" class="org.eclipse.jetty.server.Server">

<!-- -->
<!-- Rewrite -->
<!-- -->
<Get id="oldhandler" name="handler"/>
 <Set name="handler">
 <New id="Rewrite" class="org.eclipse.jetty.rewrite.handler.RewriteHandler">
 <Set name="handler">
 <Ref refid="oldhandler"/>
 </Set>
 <Set name="rewriteRequestURI">
 <Property name="rewrite.rewriteRequestURI" default="true"/>
 </Set>
 <Set name="rewritePathInfo">
 <Property name="rewrite.rewritePathInfo" default="false"/>
 </Set>
 <Set name="originalPathAttribute">
 <Property name="rewrite.originalPathAttribute" default="requestedPath"/>
 </Set>
 </New>
 </Set>

<!-- -->
<!-- apps redirect -->
<!-- -->
<Ref refid="Rewrite">
 <Call name="addRule"> 
 <Arg> 
 <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> 
 <Set name="pattern">/apps</Set> 
 <Set name="replacement">/ords/apps/f?p=100:1::::::/</Set> 
 </New> 
 </Arg> 
 </Call> 
 <Call name="addRule"> 
 <Arg> 
 <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> 
 <Set name="pattern">^/$</Set> 
 <Set name="replacement">/ords/apps/f?p=100:1::::::/</Set> 
 </New> 
 </Arg> 
 </Call> 
 <Call name="addRule"> 
 <Arg> 
 <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> 
 <Set name="pattern">/index.html</Set> 
 <Set name="replacement">/ords/apps/f?p=100:1::::::/</Set> 
 </New> 
 </Arg> 
 </Call> 
 </Ref>

<!-- -->
<!-- http logs -->
<!-- -->
<Ref id="Handlers">
 <Call name="addHandler">
 <Arg>
 <New id="RequestLog" class="org.eclipse.jetty.server.handler.RequestLogHandler">
 <Set name="requestLog">
 <New id="RequestLogImpl" class="org.eclipse.jetty.server.NCSARequestLog">
 <Set name="filename"><Property name="jetty.logs" default="/tmp/"/>ords-access-yyyy_mm_dd.log</Set>
 <Set name="filenameDateFormat">yyyy_MM_dd</Set>
 <Set name="retainDays">90</Set>
 <Set name="append">true</Set>
 <Set name="extended">false</Set>
 <Set name="logCookies">false</Set>
 <Set name="LogTimeZone">GMT</Set>
 </New>
 </Set>
 </New>
 </Arg>
 </Call>
 </Ref>

</Configure>

 

#2 Restart ords

sudo /etc/init.d/ords restart

 

#3 Check the logfile

tail -f /tmp/ords-access-2018_mm_dd.log
Advertisements

One thought on “OCI-c: ORDS redirection and logging”

  1. I’m running ORDS 18 standalone on Windows 2016. I’m trying to create a redirect, but it’s not working.. I created the folder and the file, but it doesn’t seem like ORDS is reading it.

    any suggestions?

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s