PHPackages                             xola/elasticsearch-proxy-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. xola/elasticsearch-proxy-bundle

ActiveSymfony-bundle[Authentication &amp; Authorization](/categories/authentication)

xola/elasticsearch-proxy-bundle
===============================

A Symfony2 plugin that acts as an authorization proxy for elasticsearch

v3.1(5y ago)013.7k4[1 issues](https://github.com/xola/XolaElasticsearchProxyBundle/issues)MITPHPPHP &gt;=7.1CI failing

Since Jan 24Pushed 7mo ago5 watchersCompare

[ Source](https://github.com/xola/XolaElasticsearchProxyBundle)[ Packagist](https://packagist.org/packages/xola/elasticsearch-proxy-bundle)[ Docs](https://github.com/xola/XolaElasticsearchProxyBundle)[ RSS](/packages/xola-elasticsearch-proxy-bundle/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (3)Dependencies (2)Versions (6)Used By (0)

XolaElasticsearchProxyBundle
============================

[](#xolaelasticsearchproxybundle)

A Symfony2 plugin that acts as a proxy for Elasticsearch.

Installation
------------

[](#installation)

With composer, add:

```
{
    "require": {
        "xola/elasticsearch-proxy-bundle" : "dev-master"
    }
}
```

Then enable it in your kernel:

```
// app/AppKernel.php
public function registerBundles()
{
    $bundles = array(
        //...
        new Xola\ElasticsearchProxyBundle\XolaElasticsearchProxyBundle(),
        //...
```

Configuration
-------------

[](#configuration)

```
# app/config/config.yml
xola_elasticsearch_proxy:
    client:
        protocol: http
        host: localhost
        port: 9200
        indexes: ['logs']
```

The `indexes` parameter lets you grant access to only the specified elasticsearch indexes.

Routing
-------

[](#routing)

Update your routing

```
# app/config/routing.yml
# Xola elasticsearch proxy
XolaElasticsearchProxyBundle:
    resource: "@XolaElasticsearchProxyBundle/Resources/config/routing.yml"
    prefix:   /
```

The default path is `/elasticsearch` and permits all HTTP methods (GET, PUT, POST, etc.).

Override it. Ensure `index` (to capture elastic search index) and `slug` (to capture rest of the url) remain in the route pattern.

```
# app/config/routing.yml
xola_elasticsearch_proxy:
     pattern:  /myproxy/{index}/{slug}
     defaults: { _controller: XolaElasticsearchProxyBundle:ElasticsearchProxy:proxy }
     requirements:
        slug: ".+"
```

Events
------

[](#events)

There are a couple of events fired by the bundle controller that can help you. By listening to these events you can add any custom authentication or filtering logic you require.

1. `elasticsearch_proxy.before_elasticsearch_request` - This event is fired before the request is sent to Elasticsearch. The listener will receive `ElasticsearchProxyEvent` as an argument containing the request, index, slug, and the query object. You may modify this query object and set it back on the event with `setQuery`. The updated request will then be sent on to Elasticsearch.
2. `elasticsearch_proxy.after_elasticsearch_response` - This event is fired after a response has been received from Elasticsearch. The listener will receive `ElasticsearchProxyEvent` as argument containing the request, index, slug, query, and response objects. You may modify the response and set it back into the event. The updated response is then sent back to the client.

###  Health Score

39

—

LowBetter than 85% of packages

Maintenance45

Moderate activity, may be stable

Popularity22

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~338 days

Total

4

Last Release

2065d ago

Major Versions

v0.2 → v3.02020-01-22

PHP version history (2 changes)2.x-devPHP &gt;=5.3.2

v3.0PHP &gt;=7.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/109667?v=4)[Anush Ramani](/maintainers/anush)[@anush](https://github.com/anush)

---

Top Contributors

[![kotrakrishna](https://avatars.githubusercontent.com/u/3157591?v=4)](https://github.com/kotrakrishna "kotrakrishna (19 commits)")[![anush](https://avatars.githubusercontent.com/u/109667?v=4)](https://github.com/anush "anush (14 commits)")[![rushi](https://avatars.githubusercontent.com/u/65708?v=4)](https://github.com/rushi "rushi (10 commits)")

---

Tags

searchsymfonyproxyelasticsearchauthorization

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/xola-elasticsearch-proxy-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/xola-elasticsearch-proxy-bundle/health.svg)](https://phpackages.com/packages/xola-elasticsearch-proxy-bundle)
```

###  Alternatives

[web-auth/webauthn-framework

FIDO2/Webauthn library for PHP and Symfony Bundle.

51390.8k3](/packages/web-auth-webauthn-framework)[auth0/symfony

Symfony SDK for Auth0 Authentication and Management APIs.

128790.7k](/packages/auth0-symfony)[web-auth/webauthn-symfony-bundle

FIDO2/Webauthn Security Bundle For Symfony

65474.5k9](/packages/web-auth-webauthn-symfony-bundle)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1175.2k](/packages/rcsofttech-audit-trail-bundle)[2lenet/crudit-bundle

The easy like Crud'it Bundle.

1615.6k12](/packages/2lenet-crudit-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
