FlareSolverr

MIT
Platform
Docker Linux Windows macOS
Licence
MIT Open source
FlareSolverr

FlareSolverr is a self-hosted proxy server that solves Cloudflare and DDoS-GUARD challenges on behalf of other programs. It sits on a single HTTP endpoint and does the ugly part of the job: when a request arrives it launches a real Chrome browser driven by Selenium and undetected-chromedriver, opens the target URL, waits for the interstitial challenge to clear, then returns the resulting HTML together with the cookies that solved it. Any other HTTP client can reuse those cookies and carry on normally.

That makes it the quiet plumbing behind a lot of self-hosted software. Indexers, scrapers, media managers and release watchers that need to read a site sitting behind Cloudflare call FlareSolverr instead of trying to impersonate a browser themselves and getting blocked.

What it does

  • Solves Cloudflare or DDoS-GUARD browser challenges and returns the final HTML.
  • Returns the challenge cookies so a plain HTTP client can keep using the site afterwards.
  • Idles on almost no resources between requests and spends CPU and memory only while a challenge is being worked on.
  • Supports a proxy per session, with optional username and password, in HTTP, SOCKS4 or SOCKS5 form.
  • Speaks one simple JSON API, so it works the same from Bash, Python, PowerShell or another application.

The API in practice

Everything goes to a single endpoint, POST /v1, with a cmd field naming the operation. request.get and request.post open a URL and return the response; sessions.create starts a browser that keeps its cookies between calls, which avoids re-solving the same challenge on every request; sessions.list and sessions.destroy let you see and close those browsers. A typical call sends {"cmd":"request.get","url":"https://example.com","maxTimeout":60000} and gets JSON back with the status code, the page HTML, the user agent and the cookie jar.

Running it

Docker is the recommended route because the browser and all its dependencies are baked into the image, published for x86, x86-64, ARM32 and ARM64. The container listens on port 8191. Precompiled binaries exist for Windows x64 and Linux x64, and running from source needs Python 3.11, Chrome or Chromium, and Xvfb on Linux. A Compose file and an example systemd unit ship with the repository.

Things worth knowing before you deploy it

Never expose it to the internet: an open FlareSolverr is an open browser that anyone can drive. Every challenge starts a browser, so on a small host keep concurrency low and close sessions when you are done rather than leaving them running. On machines with NVMe or SSD storage, mount /tmp as tmpfs inside the container, because the transient browser profiles otherwise write continuously to disk. And it is a challenge solver, not a login bypass: it gets you through the interstitial page, nothing more.

Where it fits

FlareSolverr is usually deployed next to the applications that need it rather than used directly. It is a common companion for indexers such as Prowlarr and Jackett. Browse the rest of the directory for similar self-hosted infrastructure.

Explore More Categories

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.