MCPSERV.CLUB
Revive Adserver

Revive Adserver

Self-Hosted

Open‑source ad serving for publishers and networks

Active(100)
1.4kstars
0views
Updated 23 hours ago

Overview

Discover what makes Revive Adserver powerful

Revive Adserver is a mature, open‑source ad‑serving engine written in PHP that powers publishers, ad networks and advertisers worldwide. From a developer’s perspective it is essentially a *stateless HTTP service* that receives ad‑request payloads, performs targeting and bidding logic against a relational database, then returns the selected banner or blank response. The core flow is: **tag → request → targeting rules → database lookup → banner delivery**. This architecture keeps the runtime lightweight, allowing it to run on any LAMP stack while still supporting complex targeting such as frequency capping, geo‑location (via MaxMind GeoLite2), URL and device rules.

Targeting & Rules Engine

API & Webhooks

Extensibility

Reporting

Overview

Revive Adserver is a mature, open‑source ad‑serving engine written in PHP that powers publishers, ad networks and advertisers worldwide. From a developer’s perspective it is essentially a stateless HTTP service that receives ad‑request payloads, performs targeting and bidding logic against a relational database, then returns the selected banner or blank response. The core flow is: tag → request → targeting rules → database lookup → banner delivery. This architecture keeps the runtime lightweight, allowing it to run on any LAMP stack while still supporting complex targeting such as frequency capping, geo‑location (via MaxMind GeoLite2), URL and device rules.

Key Features

  • Targeting & Rules Engine – Campaigns, ads and zones can be constrained by a rich set of rules (frequency caps, day‑parting, geo, user agent, referrer). Rules are stored as serialized PHP objects in the database and evaluated on each request.
  • API & Webhooks – A REST‑style API exposes CRUD operations for advertisers, campaigns, zones and statistics. Webhooks can be configured to notify external systems on events like impressions or clicks.
  • Extensibility – The plugin architecture allows developers to hook into request handling, reporting and UI rendering. Custom plugins can add new targeting criteria, integrate with third‑party analytics or replace the default UI components.
  • Reporting – The built‑in reporting engine aggregates data in real time and can export CSV, PDF or JSON. Developers can query the stats tables directly for custom dashboards.

Technical Stack

LayerTechnology
RuntimePHP 7.4+ (object‑oriented, MVC pattern)
Web ServerApache/Nginx with PHP-FPM
DatabaseMySQL/MariaDB (optional PostgreSQL via community patch)
CacheOptional Redis or Memcached for session and targeting cache
Geo‑TargetingMaxMind GeoLite2 database (free)
Front‑endVanilla JS + Bootstrap 4 for admin UI

The codebase follows PSR‑4 autoloading and uses Composer for dependency management, making it straightforward to add third‑party libraries or replace the default templating engine.

Deployment & Infrastructure

Revive Adserver is designed for self‑hosting. A single PHP worker can serve thousands of requests per second when paired with a read‑replica database and a CDN that caches static assets. For high availability, the application can be deployed behind a load balancer with sticky sessions (or session‑replication via Redis). Containerization is well supported; official Docker images are available, and the project’s docker-compose.yml demonstrates a ready‑to‑run stack with MySQL, PHP-FPM and Nginx. Kubernetes deployments are also common in enterprise environments.

Integration & Extensibility

  • SDKs – PHP SDK for generating tags and managing inventory programmatically.
  • Event Hooks – Trigger custom scripts on impression, click or conversion events.
  • Custom Targeting Plugins – Implement new targeting logic (e.g., machine‑learning scoring) by extending the Targeting interface.
  • API Clients – REST endpoints expose all CRUD operations; OAuth2 support is available in newer releases.

These hooks allow developers to embed Revive into existing ad‑tech pipelines, feed data back to DSPs, or automate campaign creation from external systems.

Developer Experience

The project is documented in Markdown and a dedicated developer guide on the website. Configuration is driven by config.php and .env files, making it easy to switch environments. The community is active on GitHub issues and a mailing list; most bugs are addressed within days, and pull requests for new plugins or features are accepted. Licensing under GPLv2+ ensures no cost barrier and guarantees that enhancements remain open source.

Use Cases

  1. Self‑hosted Ad Network – Run a full‑featured network that accepts campaigns from multiple advertisers, applies sophisticated targeting, and reports metrics internally.
  2. Enterprise Publisher – Replace a commercial ad server with an open‑source alternative while retaining full control over data and custom targeting rules.
  3. Hybrid Mobile/Web Advertising – Serve ads to web, native apps and video players via a single tag endpoint, with per‑platform targeting.
  4. Data‑Driven Campaign Automation – Use the API to feed campaign data from a BI system, auto‑generate tags and schedule campaigns programmatically.

Advantages

  • Cost & Flexibility – Completely free, no vendor lock‑in; developers can modify core logic or UI to match brand guidelines.
  • Performance – Lightweight PHP code, minimal dependencies; with caching and CDN it scales to millions of requests.
  • Extensibility – Plugin system and REST API make it easy to integrate with external DSPs, analytics platforms or custom targeting engines.
  • Community & Support – Active GitHub repo, comprehensive documentation, and a mailing list provide rapid assistance.

For developers who need full control over ad delivery logic, data ownership, and the ability to extend or customize every layer of the stack, Revive Adserver offers a compelling, open‑source alternative to proprietary ad servers.

Open SourceReady to get started?

Join the community and start self-hosting Revive Adserver today