OS Manuals

/usr/bin/gitlab-pages

GitLab Pages daemon used to serve static websites for GitLab users.

From gitlab-pages-18.9 18.9.8-r3 (enterprise-packages), captured 2026-11-08 by running gitlab-pages --help (exit 2). permalink

Usage of /usr/bin/gitlab-pages:
  -api-secret-key="": File with secret key used to authenticate with the GitLab API
  -artifacts-server="": API URL to proxy artifact requests to, e.g.: 'https://gitlab.com/api/v4'
  -artifacts-server-timeout=10: Timeout (in seconds) for a proxied request to the artifacts server
  -auth-client-id="": GitLab application Client ID
  -auth-client-secret="": GitLab application Client Secret
  -auth-cookie-session-timeout=10m0s: Authentication cookie session timeout (truncated to seconds). A zero value means the cookie will be deleted after the browser session ends
  -auth-redirect-uri="": GitLab application redirect URI
  -auth-scope="api": Scope to be used for authentication (must match GitLab Pages OAuth application settings)
  -auth-secret="": Cookie store hash key, should be at least 32 bytes long
  -auth-timeout=5s: GitLab application client timeout for authentication
  -client-ca-certs=: File paths to CA certificates used to sign client certificates for mutual TLS
  -client-cert="": File path to client certificate to use for mutual TLS with GitLab API
  -client-key="": File path to client key to use for mutual TLS with GitLab API
  -config="": path to config file
  -disable-cross-origin-requests=false: Disable cross-origin requests
  -enable-disk=true: Enable disk access, shall be disabled in environments where shared disk storage isn't available
  -gitlab-cache-cleanup=1m0s: The interval at which expired items are removed from the cache
  -gitlab-cache-expiry=10m0s: The maximum time a domain's configuration is stored in the cache
  -gitlab-cache-refresh=1m0s: The interval at which a domain's configuration is set to be due to refresh
  -gitlab-client-http-timeout=1m0s: GitLab API HTTP client connection timeout in seconds (default: 60s)
  -gitlab-client-jwt-expiry=30s: JWT Token expiry time in seconds (default: 30s)
  -gitlab-retrieval-interval=1s: The interval to wait before retrying to resolve a domain's configuration via the GitLab API
  -gitlab-retrieval-retries=3: The maximum number of times to retry to resolve a domain's configuration via the API
  -gitlab-retrieval-timeout=30s: The maximum time to wait for a response from the GitLab API per request
  -gitlab-server="": Public GitLab server, for example https://www.gitlab.com
  -header=: The additional http header(s) that should be send to the client
  -insecure-ciphers=false: Use default list of cipher suites. Starting from GitLab 17.10, the insecure-ciphers flag is ignored.
  -internal-gitlab-server="": Internal GitLab server used for API requests, useful if you want to send that traffic over an internal load balancer, example value https://gitlab.example.internal (defaults to value of gitlab-server)
  -listen-http=: The address(es) or unix socket paths to listen on for HTTP requests
  -listen-https=: The address(es) or unix socket paths to listen on for HTTPS requests
  -listen-https-proxyv2=: The address(es) or unix socket paths to listen on for HTTPS PROXYv2 requests (https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt)
  -listen-proxy=: The address(es) or unix socket paths to listen on for proxy requests
  -log-format="json": The log output format: 'text' or 'json'
  -log-verbose=false: Verbose logging
  -max-conns=0: Limit on the number of concurrent connections to the HTTP, HTTPS or proxy listeners, 0 for no limit
  -max-uri-length=2048: Limit the length of URI, 0 for unlimited.
  -metrics-address="": The address to listen on for metrics requests
  -metrics-certificate="": The default path to file certificate to serve metrics requests
  -metrics-key="": The default path to file private key to serve metrics requests
  -namespace-in-path=false: Enable Namespace in path
  -pages-domain="gitlab-example.com": The domain to serve static pages
  -pages-root="shared/pages": The directory where pages are stored
  -pages-status="": The url path for a status page, e.g., /@status
  -propagate-correlation-id=true: Reuse existing Correlation-ID from the incoming request header `X-Request-ID` if present
  -rate-limit-domain=0: Rate limit HTTP requests per second to a single domain, 0 means is disabled
  -rate-limit-domain-burst=100: Rate limit HTTP requests to a single domain, maximum burst allowed per second
  -rate-limit-source-ip=0: Rate limit HTTP requests per second from a single IP, 0 means is disabled
  -rate-limit-source-ip-burst=100: Rate limit HTTP requests from a single IP, maximum burst allowed per second
  -rate-limit-subnets-allow-list=: Comma-separated list of subnets to which rate-limits are not applied. Examples: "192.168.255.0/24,10.1.1.0/24,2001:db8::/32"
  -rate-limit-tls-domain=0: Rate limit new TLS connections per second from to a single domain, 0 means is disabled
  -rate-limit-tls-domain-burst=100: Rate limit new TLS connections from a single domain, maximum burst allowed per second
  -rate-limit-tls-source-ip=0: Rate limit new TLS connections per second from a single IP, 0 means is disabled
  -rate-limit-tls-source-ip-burst=100: Rate limit new TLS connections from a single IP, maximum burst allowed per second
  -redirect-http=false: Redirect pages from HTTP to HTTPS
  -redirects-max-config-size=65536: The maximum size of the _redirects file, in bytes
  -redirects-max-path-segments=25: The maximum number of path segments allowed in _redirects rules URLs
  -redirects-max-rule-count=1000: The maximum number of rules allowed in _redirects
  -root-cert="": The default path to file certificate to serve static pages
  -root-key="": The default path to file certificate to serve static pages
  -sentry-dsn="": The address for sending sentry crash reporting to
  -sentry-environment="": The environment for sentry crash reporting
  -server-keep-alive=15s: KeepAlive specifies the keep-alive period for network connections accepted by this listener. If zero, keep-alives are enabled if supported by the protocol and operating system. If negative, keep-alives are disabled.
  -server-read-header-timeout=1s: ReadHeaderTimeout is the amount of time allowed to read request headers. A zero or negative value means there will be no timeout.
  -server-read-timeout=5s: ReadTimeout is the maximum duration for reading the entire request, including the body. A zero or negative value means there will be no timeout.
  -server-shutdown-timeout=30s: GitLab Pages server shutdown timeout (default: 30s)
  -server-write-timeout=0s: WriteTimeout is the maximum duration before timing out writes of the response. A zero or negative value means there will be no timeout.
  -slow-requests-threshold=500ms: Threshold for logging slow requests (default: 500ms)
  -tls-client-auth="noclientcert": Determines the TLS servers policy for client authentication. Defaults to no client certificate. Values can be found at https://pkg.go.dev/crypto/tls#ClientAuthType
  -tls-client-auth-domains=: The domain(s) that require client certificate authentication
  -tls-client-cert="": Path to the certificate authority used to validate client certificates against
  -tls-max-version="": Specifies the maximum SSL/TLS version, supported values are "tls1.2", "tls1.3"
  -tls-min-version="tls1.2": Specifies the minimum SSL/TLS version, supported values are "tls1.2", "tls1.3"
  -use-http2=true: DEPRECATED: HTTP2 is always enabled for pages
  -version=false: Show version
  -zip-cache-cleanup=30s: Zip serving archive cache cleanup interval
  -zip-cache-expiration=1m0s: Zip serving archive cache expiration interval
  -zip-cache-refresh=30s: Zip serving archive cache refresh interval
  -zip-http-client-timeout=30m0s: Zip HTTP client timeout
  -zip-open-timeout=30s: Zip archive open timeout

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.