OC4J - Setting Up Virtual Hosts


Setup multiple host on several domains using a single IP address. (ie What is and how works a virtual host / custom domain / vanity hostnames)


This is a very basic example, it does not take into account using shared applications or event the use of .war or .ear files. This is left as an exercise for the reader.

  • Example Domains: gerardnico.com,
  • Example IP Address:


Create directories under $OC4J_HOME\applications\ for each domain.

    mkdir $OC4J_HOME\applications\gerardnico

Add to the directory a index.html file.

Contents of $OC4J_HOME\applications\gerardnico\index.html:

      <body bgcolor="#FFFFFF">

Create WEB-INF directories for the domains.

    mkdir $OC4J_HOME\applications\gerardnico\WEB-INF

Each WEB-INF directory should contain a web.xml file.

Contents of $OC4J_HOME\applications\gerardnico\WEB-INF\web.xml






Create web-site XML file for each domain.

Contents of $OC4J_HOME\config\gerardnico-web-site.xml:

    <web-site host="" port="80" display-name="gerardnico" virtual-hosts="gerardnico.com">

      <!-- The default web-app for this site, bound to the root -->
      <default-web-app application="default" name="gerardnico" />

      <access-log path="../log/gerardnico-web-access.log" />


Edit $OC4J_HOME\config\application.xml. Add the following lines:

     <web-module id="gerardnico" path="../../home/applications/gerardnico" />

Edit $OC4J_HOME\config\server.xml. Add the following lines:

    <web-site path="./gerardnico-web-site.xml" />

Restart OC4J and test.


Powered by ComboStrap