esigate logo

Version 5.2

Webapp integration,
Remote templating,
Web accelerator
esigate is used by

Server-side integration

Esigate allows a fast and invisible mashup of any web applications.

It can be used to add application modules, written in any programming language (PHP, Java, .Net...) to a CMS, without cache or accessibility issues.

Details »

Shared remote templates

Use a single, shared template for several applications, ensuring exactly the same design and real-time synchronization.

Use a CMS or a portal as a template, to get graphical administration features for all your applications.

Details »

Web accelerator

Improved ESI tags to allow block-level caching of content for dynamic pages.

Deliver dynamic, logged-in content in milli-seconds. Also deliver fully cached content.

Details »


Server-side integration

ESIGate allows to combine web pages and HTML fragments produced by several applications. This is done server-side and at the HTML level. As a result, the end user gets a simple HTML page as if it was produced by a single application.

+ + =

Instead of developing a single, large application, use several applications, sharing the same design and content:

A typical setup could be:

  • Drupal (PHP-based CMS), used to manage the global design and content.
  • Struts2 (Java framework), used for custom developments.

With server-side integration, application and websites can be fully optimized for accessibility and search engines (SEO).

Shared remote templates

ESIGate lets you use remote templates. This means that all the main design elements (basic HTML content and structure, shared textual content, css, images... ) are not included in the application but assembled on-the-fly for each user request.

The benefits are:

  • A same design can be used in several applications: graphical, textual or even layout changes are applyed in real time, without deployment or restart.
  • Template is hosted on an HTTP server and can be provided by a dynamic application as a content management system or a portal. These products often provide administration features for design and layout which can be used directly with ESIGate.
  • Better performances since applications render fewer HTML code and content. Shared content are stored in ESIGate cache and merged at high speed on each request.

Web accelerator

ESIGate is both a proxy and a cache:

HTML content is cached according to HTTP directives returned by each URL. Caching can be forced globally or on specific urls by using extensions.

Embedded or distributed cache: each ESIGate instance can use its own cache or share a common cache using ehcache or memcached.

Background revalidation and reuse of stale content on error allows constant response times and failure-resistance.

Non-cacheable pages are usually composed of cacheable content and some dynamic content. With ESIGate, applications can generate the dynamic part only (fast) and reuse all cacheable content (bloc-level cache).


ESIGate processes HTML content transparently. As a result it is compatible with most framework, tools and web applications as long as they provide web interfaces (HTML or XML over HTTP).

ESIGate has been used successfully with:

ESI 1.0 and additions

ESIGate fully supports the ESI 1.0 W3C proposal.

Unique additions improve ESI, allowing its use on wider usecases:

  • Fragments and XPath support to securely extract parts of HTML pages.
  • Ability to replace fragments on inclusion, enabling shared template use.
  • Support for XSLT-transformed XML fragments.
  • Specific configuration for each backend (ttl, extensions...).

Extensions and API

ESIGate provides a JAVA extension API. Extensions can hook on the request lifecycle and change behavior according to your needs.

Extensions can also handle authentication. ESIGate comes with a native CAS SSO extension.

ESIGate can also be embedded in applications and used for API to build fast and great applications.


ESIGate is hosted on Sourceforge. The project home provides sources and downloads access, mailing lists and project wiki.

ESIGate is build with Maven. For developers, the Maven site is available, with project informations (project team, source repository, dependencies...) and reports (Javadoc, changelog...).

ESIGate is avalaible on the central Maven repository. It can be easily added to an existing project by adding the right esigate-* dependency.
Snapshots are also available on Sonatype OSS repository.

Quick links:

Wiki | Changelog | Roadmap | Bugs | Report a bug ( requires a GitHub account)

Talk with us ! general discution, questions and answers. (Archive | Subscribe) mailing list on ESIGate development. (Archive | Subscribe)

Statistics by Ohloh:


ESIGate is open-source and can be used at no cost.

Community support

You can get help from the user mailing list

Commercial support

The following companies provide commercial services on ESIGate:

In business since 1991, Smile is the first European integrator of open source solutions. Smile employs 7 active ESIGate developers, including the creator of the project.

Smile has delivered several ESIGate-based projects.

Committer Contact...

Committer and user of ESIGate since the very first ESIGate versions, provides commercial training and support on ESIGate.

Nicolas also provides expertise on ESIGate projects delivered by Capgemini.

Committer Contact...

Capgemini is headquartered in Paris, France and operates in 40 countries. We are, above all, a people company: more than 120,000 people in North America, Europe, South America and the Asia Pacific region..

Capgemini has delivered several major projects built with ESIGate.

Integrator Contact...

Founded in 2002 and located in Geneva (Switzerland), Jahia Solutions Group is a open source software company. Jahia is deployed in France, Austria, Germany, Canada and USA. Hundred of governmental organizations and companies are using Jahia in more than 20 countries all over the world.

Jahia is an ESIGate contributor and has made one of the most advanced integration with its Portal Factory solution, allowing you to seamlessly integrate your business applications with Jahia software.

Committer Contact...

Fork me on GitHub