Skip to content

friedemannsommer/searproxy

Folders and files

NameName
Last commit message
Last commit date
Feb 21, 2025
Dec 8, 2024
Feb 5, 2025
Feb 22, 2025
Aug 3, 2022
Feb 22, 2025
Feb 22, 2025
Feb 12, 2022
Aug 7, 2023
Jun 9, 2023
Dec 8, 2024
Jun 3, 2024
Oct 29, 2024

Repository files navigation

SearProxy

A SearX / SearXNG compatible web content sanitizer proxy

This implementation is heavily inspired by Morty.

Usage

searproxy [OPTIONS] --hmac-secret <HMAC_SECRET> --listen <LISTEN_ADDRESS>

Options

  • --lazy-images - Enable IMG element rewriting with "lazy" loading. (default: false)
  • -f / --follow-redirect - Allow "Location" response header following (default: false)
  • -l / --listen - <IPv4 / IPv6>:port or socket to listen on
  • -p / --proxy-address - HTTP(s) / SOCKS5 proxy for outgoing HTTP(s) requests
  • -s / --hmac-secret - Base64 encoded string to use as HMAC 256 secret
  • --connect-timeout - Timeout in seconds to wait for until the connection is established (default: 5s)
  • -t / --request-timeout - Timeout in seconds to wait for a request to complete
  • -v / --log-level - Log level to use (default: WARN)
  • -w / --worker-count - Worker thread count for handling incoming HTTP requests (default: CPU core count)
  • -r / --permitted-ip-range - Permitted IP (v4, v6) ranges (default: "global")
  • -h / --help - Print help information
  • -V / --version - Print version information

ENV options

Passed options will override ENV options

  • SEARPROXY_LAZY_IMAGES - Enable IMG element rewriting with "lazy" loading. (default: false)
  • SEARPROXY_FOLLOW_REDIRECTS - Allow "Location" response header following (default: false)
  • SEARPROXY_LISTEN - <IPv4 / IPv6>:port or socket to listen on
  • HTTP_PROXY - HTTP(s) / SOCKS5 proxy for outgoing HTTP(s) requests
  • SEARPROXY_HMAC_SECRET - Base64 encoded string to use as HMAC 256 secret
  • SEARPROXY_CONNECT_TIMEOUT - Timeout in seconds to wait for until the connection is established (default: 5s)
  • SEARPROXY_REQUEST_TIMEOUT - Timeout in seconds to wait for a request to complete
  • SEARPROXY_LOG_LEVEL - Log level to use (default: WARN)
  • SEARPROXY_WORKER_COUNT - Worker thread count for handling incoming HTTP requests (default: CPU core count)
  • SEARPROXY_PERMITTED_IP_RANGE - Permitted IP (v4, v6) ranges (default: "global")

Open source licenses

A list of licenses for the projects used in SearProxy can be found here: friedemannsommer.github.io/searproxy/licenses.html.

This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (www.openssl.org)