The image illustrates the details of the expires caching technique. The details are as follows:

  1. The Oracle HTTP Server receives a PL/SQL Server Page request from a client server. The Oracle HTTP Server routes the request to mod_plsql.

  2. The request is forwarded by mod_plsql to the Oracle Database.

  3. mod_plsql invokes the PL/SQL procedure in the application and passes the usual Common Gateway Interface (CGI) environment variables to the application.

  4. The PL/SQL procedure generates content to pass back. If the PL/SQL procedure decides that the generated content is cacheable, it calls the owa_cache procedure from the PL/SQL Web Toolkit to set the validity period and cache level:

    owa_cache.set_expires(p_expires, p_level);
  5. The HTML is returned to mod_plsql.

  6. mod_plsql stores the cacheable content in its file system for the next request.

  7. The Oracle HTTP Server sends the response to the client browser.