CONFIGURABLE-HTTP-PROXY(1)

πŸ“¦
version 4.5.3+~cs15.2.4 Β· 4 versions
, in ubuntu noble, ubuntu resolute

πŸ’– NAME πŸ’–

okay so bestie, meet configurable-http-proxy β€” it's a configurable-on-the-fly HTTP Proxy written in Node.js. yes she's that girl. she rewrites her routing while she's running, no restart, no drama. πŸ‘‘

this lil page lives in the User Commands section of your manual, so you already know it's giving real-tool energy. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

configurable-http-proxy [options]

that's it. that's the whole vibe. toss her some options and she goes. 🫢


πŸ’… OPTIONS πŸ’…

she has so many options, and honestly? obsessed. every single one below, no skips, no cuts. πŸŽ€

  • -V, --version β€” prints out the version number. that's the whole job. she ate. πŸ’…
  • --ip <ip-address> β€” the public-facing IP of the proxy. who the world sees.
  • --port <n> β€” the public-facing port of the proxy. defaults to 8000 if you don't say anything. ⭐
  • --ssl-key <keyfile> β€” SSL key to use, if any. no key? no worries.
  • --ssl-cert <certfile> β€” SSL certificate to use, if any.
  • --ssl-ca <ca-file> β€” SSL certificate authority, if any.
  • --ssl-request-cert β€” asks for SSL certs so clients can authenticate themselves. πŸ’³
  • --ssl-reject-unauthorized β€” rejects unauthorized SSL connections. heads up: this is only meaningful if --ssl-request-cert is given. no request, nothing to reject, iykyk.
  • --ssl-protocol <ssl-protocol> β€” pins a specific SSL protocol, like TLSv1_2 or SSLv3.
  • --ssl-ciphers <ciphers> β€” a :-separated ssl cipher list. the default excludes RC4, because bestie has taste.
  • --ssl-allow-rc4 β€” allows the RC4 cipher for SSL. it's disabled by default and there's a reason for that. πŸ”₯
  • --ssl-dhparam <dhparam-file> β€” SSL Diffie-Helman Parameters pem file, if any.
  • --api-ip <ip> β€” the inward-facing IP for API requests. defaults to "localhost".
  • --api-port <n> β€” the inward-facing port for API requests. defaults to --port=value+1, which is cute of her.
  • --api-ssl-key <keyfile> β€” SSL key to use, if any, for API requests.
  • --api-ssl-cert <certfile> β€” SSL certificate to use, if any, for API requests.
  • --api-ssl-ca <ca-file> β€” SSL certificate authority, if any, for API requests.
  • --api-ssl-request-cert β€” requests SSL certs to authenticate clients for API requests.
  • --api-ssl-reject-unauthorized β€” rejects unauthorized SSL connections. again: only meaningful if --api-ssl-request-cert is given.
  • --client-ssl-key <keyfile> β€” SSL key to use, if any, for proxy-to-client requests.
  • --client-ssl-cert <certfile> β€” SSL certificate to use, if any, for proxy-to-client requests.
  • --client-ssl-ca <ca-file> β€” SSL certificate authority, if any, for proxy-to-client requests.
  • --client-ssl-request-cert β€” requests SSL certs to authenticate clients for API requests. (yes, it says API requests. that's what it says. we don't question the queen. πŸ™ˆ)
  • --client-ssl-reject-unauthorized β€” rejects unauthorized SSL connections, and same rule as always: only meaningful if --client-ssl-request-cert is given.
  • --default-target <host> β€” the default proxy target, written as proto://host[:port].
  • --error-target <host> β€” an alternate server for handling proxy errors, written as proto://host[:port].
  • --error-path <path> β€” an alternate server for handling proxy errors, written as proto://host[:port].
  • --redirect-port <redirect-port> β€” redirects HTTP requests on this port over to the server on HTTPS. glow up to TLS. ✨
  • --redirect-to <port> β€” redirects HTTP requests from --redirect-port to this port.
  • --pid-file <pid-file> β€” writes our PID to a file. she's documenting herself. main character behavior. πŸ“
  • --no-x-forward β€” don't add 'X-forward-' headers to proxied requests.
  • --no-prepend-path β€” avoids prepending target paths to proxied requests.
  • --no-include-prefix β€” don't include the routing prefix in proxied requests.
  • --auto-rewrite β€” rewrites the Location header host/port in redirect responses. sneaky, helpful, iconic.
  • --change-origin β€” changes the origin of the host header to the target URL.
  • --protocol-rewrite <proto> β€” rewrites the Location header protocol in redirect responses to the specified protocol.
  • --custom-header <header> β€” a custom header to add to proxied requests. use the same option again for multiple headers, like --custom-header k1:v1 --custom-header k2:v2. default: {}. πŸŽ€
  • --insecure β€” disables SSL cert verification.
ngl bestie, turning off cert verification is exactly as unserious as it sounds. she's allowed to do it. that doesn't mean it's a good idea. 😭
  • --host-routing β€” uses host routing, meaning the host becomes the first level of the path.
  • --metrics-ip <ip> β€” IP for the metrics server. default: "".
  • --metrics-port <n> β€” port of the metrics server. defaults to no metrics server at all, which is very "I'm booked and busy". ⭐
  • --log-level <loglevel> β€” log level, one of debug, info, warn, error. default: "info".
  • --timeout <n> β€” timeout (in millis) when the proxy drops a connection for a request.
  • --proxy-timeout <n> β€” timeout (in millis) when the proxy receives no response from the target.
  • --storage-backend <storage-class> β€” defines an external storage class. defaults to in-MemoryStore.
  • -h, --help β€” displays help for the command. when in doubt, ask her directly. πŸ’œ

and that's the whole page, bestie, every single flag, untouched and unskipped. πŸ’–

configurable-http-proxy 4.5.3 🌈 β€” that's the version, and this whole page is dated March 2023. go forth and proxy. periodt. πŸ’…βœ¨
πŸ“¦ where this page comes from