UWSGI_LDAP(1)
๐ UWSGI_LDAP(1) ๐
okay so this page is UWSGI_LDAP(1), and it lives in the User Commands manual. Buckle up bestie, we're about to go through every single option and it's a lot, but it's all here, no cap. โจ
โจ NAME โจ
uwsgi_ldap โ fast (pure C), self-healing, developer-friendly WSGI server.
๐ฆ SYNOPSIS ๐ฆ
uwsgi-core [options...]
๐ DESCRIPTION ๐
okay so literally every flag and option is about to be listed, and yes, we're keeping all of them. every single one. periodt. ๐ซถ
-s,--socketโ binds to the specified UNIX/TCP socket using default protocol. ๐-s,--uwsgi-socketโ binds to the specified UNIX/TCP socket using uwsgi protocol.--suwsgi-socketโ binds to the specified UNIX/TCP socket using uwsgi protocol over SSL. ๐--ssl-socketโ binds to the specified UNIX/TCP socket using uwsgi protocol over SSL. same energy.--http-socketโ binds to the specified UNIX/TCP socket using HTTP protocol. ๐--http-socket-modifier1โ forces the specified modifier1 when using HTTP protocol.--http-socket-modifier2โ forces the specified modifier2 when using HTTP protocol.--http11-socketโ binds to the specified UNIX/TCP socket using HTTP 1.1 (Keep-Alive) protocol.--https-socketโ binds to the specified UNIX/TCP socket using HTTPS protocol. ๐--https-socket-modifier1โ forces the specified modifier1 when using HTTPS protocol.--https-socket-modifier2โ forces the specified modifier2 when using HTTPS protocol.--fastcgi-socketโ binds to the specified UNIX/TCP socket using FastCGI protocol.--fastcgi-nph-socketโ binds to the specified UNIX/TCP socket using FastCGI protocol (nph mode). ๐--fastcgi-modifier1โ forces the specified modifier1 when using FastCGI protocol.--fastcgi-modifier2โ forces the specified modifier2 when using FastCGI protocol.--scgi-socketโ binds to the specified UNIX/TCP socket using SCGI protocol.--scgi-nph-socketโ binds to the specified UNIX/TCP socket using SCGI protocol (nph mode).--scgi-modifier1โ forces the specified modifier1 when using SCGI protocol.--scgi-modifier2โ forces the specified modifier2 when using SCGI protocol.--raw-socketโ binds to the specified UNIX/TCP socket using RAW protocol.--raw-modifier1โ forces the specified modifier1 when using RAW protocol.--raw-modifier2โ forces the specified modifier2 when using RAW protocol.--puwsgi-socketโ binds to the specified UNIX/TCP socket using persistent uwsgi protocol (puwsgi).--protocolโ forces the specified protocol for default sockets.--socket-protocolโ forces the specified protocol for default sockets. twin behavior fr fr.--shared-socketโ creates a shared socket for advanced jailing or ipc.--undeferred-shared-socketโ creates a shared socket for advanced jailing or ipc (undeferred mode).-p,--processesโ spawns the specified number of workers/processes.-p,--workersโ spawns the specified number of workers/processes. yes same-p, iconic.--thunder-lockโ serializes accept() usage (if possible).-t,--harakiriโ sets harakiri timeout. โณ--harakiri-verboseโ enables verbose mode for harakiri.--harakiri-graceful-timeoutโ interval between graceful harakiri attempt and a sigkill.--harakiri-graceful-signalโ uses this signal instead of sigterm for graceful harakiri attempts.--harakiri-queue-thresholdโ only triggers harakiri if queue is greater than this threshold.--harakiri-no-arhโ does not enable harakiri during after-request-hook.--no-harakiri-arhโ does not enable harakiri during after-request-hook.--no-harakiri-after-req-hookโ does not enable harakiri during after-request-hook.--backtrace-depthโ sets backtrace depth.--mule-harakiriโ sets harakiri timeout for mule tasks.-x,--xmlconfigโ loads config from xml file.-x,--xmlโ loads config from xml file.--configโ loads configuration using the pluggable system.--fallback-configโ re-execs uwsgi with the specified config when exit code is 1.--strictโ enables strict mode (placeholder cannot be used).--skip-zeroโ skips check of file descriptor 0.--skip-atexitโ skips atexit hooks (ignored by the master).--skip-atexit-teardownโ skips atexit teardown (ignored by the master).-S,--setโ sets a placeholder or an option.--set-placeholderโ sets a placeholder.--set-phโ sets a placeholder.--getโ prints the specified option value and exits.--declare-optionโ declares a new uWSGI custom option.--declare-option2โ declares a new uWSGI custom option (non-immediate).--resolveโ places the result of a dns query in the specified placeholder, sytax:placeholder=name(immediate option).--forโ (opt logic) for cycle. ๐--for-globโ (opt logic) for cycle (expand glob).--for-timesโ (opt logic) for cycle (expand the specified num to a list starting from 1).--for-readlineโ (opt logic) for cycle (expand the specified file to a list of lines).--endforโ (opt logic) end for cycle.--end-forโ (opt logic) end for cycle.--if-optโ (opt logic) check for option.--if-not-optโ (opt logic) check for option.--if-envโ (opt logic) check for environment variable.--if-not-envโ (opt logic) check for environment variable.--ifenvโ (opt logic) check for environment variable.--if-reloadโ (opt logic) check for reload.--if-not-reloadโ (opt logic) check for reload.--if-hostnameโ (opt logic) check for hostname.--if-not-hostnameโ (opt logic) check for hostname.--if-hostname-matchโ (opt logic) try to match hostname against a regular expression.--if-not-hostname-matchโ (opt logic) try to match hostname against a regular expression.--if-existsโ (opt logic) check for file/directory existence.--if-not-existsโ (opt logic) check for file/directory existence.--ifexistsโ (opt logic) check for file/directory existence.--if-pluginโ (opt logic) check for plugin.--if-not-pluginโ (opt logic) check for plugin.--ifpluginโ (opt logic) check for plugin.--if-fileโ (opt logic) check for file existence.--if-not-fileโ (opt logic) check for file existence.--if-dirโ (opt logic) check for directory existence.--if-not-dirโ (opt logic) check for directory existence.--ifdirโ (opt logic) check for directory existence.--if-directoryโ (opt logic) check for directory existence.--endifโ (opt logic) end if.--end-ifโ (opt logic) end if.--blacklistโ sets options blacklist context.--end-blacklistโ clears options blacklist context.--whitelistโ sets options whitelist context.--end-whitelistโ clears options whitelist context.--ignore-sigpipeโ does not report (annoying) SIGPIPE.--ignore-write-errorsโ does not report (annoying) write()/writev() errors.--write-errors-toleranceโ sets the maximum number of allowed write errors (default: no tolerance).--write-errors-exception-onlyโ only raises an exception on write errors giving control to the app itself.--disable-write-exceptionโ disables exception generation on write()/writev().--inheritโ uses the specified file as config template.--includeโ includes the specified file as immediate configuration.--inject-beforeโ injects a text file before the config file (advanced templating).--inject-afterโ injects a text file after the config file (advanced templating).-d,--daemonizeโ daemonizes uWSGI. ๐ป--daemonize2โ daemonizes uWSGI after app loading.--stopโ stops an instance. ๐--reloadโ reloads an instance.--pauseโ pauses an instance.--suspendโ suspends an instance.--resumeโ resumes an instance.--connect-and-readโ connects to a socket and waits for data from it.--extractโ fetches/dumps any supported address to stdout.-l,--listenโ sets the socket listen queue size.-v,--max-varsโ sets the amount of internal iovec/vars structures.--max-appsโ sets the maximum number of per-worker applications.-b,--buffer-sizeโ sets internal buffer size.-m,--memory-reportโ enables memory report.--profilerโ enables the specified profiler.-c,--cgi-modeโ forces CGI-mode for plugins supporting it.-a,--abstract-socketโ forces UNIX socket in abstract mode (Linux only). ๐ง-C,--chmod-socketโ chmod-socket.-C,--chmodโ chmod-socket.--chown-socketโ chown unix sockets.--umaskโ sets umask.--freebindโ puts socket in freebind mode.--map-socketโ maps sockets to specific workers.-T,--enable-threadsโ enables threads (stub option this is true by default).--no-threads-waitโ does not wait for threads cancellation on quit/reload.--auto-procnameโ automatically sets processes name to something meaningful.--procname-prefixโ adds a prefix to the process names.--procname-prefix-spacedโ adds a spaced prefix to the process names.--procname-appendโ appends a string to process names.--procnameโ sets process names.--procname-masterโ sets master process name.-i,--single-interpreterโ does not use multiple interpreters (where available).--need-appโ exits if no app can be loaded.-M,--masterโ enables master process. ๐--honour-stdinโ does not remap stdin to /dev/null.--emperorโ runs the Emperor.--emperor-proxy-socketโ forces the vassal to became an Emperor proxy.--emperor-wrapperโ sets a binary wrapper for vassals.--emperor-wrapper-overrideโ sets a binary wrapper for vassals to try before the default one.--emperor-wrapper-fallbackโ sets a binary wrapper for vassals to try as a last resort.--emperor-nofollowโ does not follow symlinks when checking for mtime.--emperor-procnameโ sets the Emperor process name.--emperor-freqโ sets the Emperor scan frequency (default 3 seconds).--emperor-required-heartbeatโ sets the Emperor tolerance about heartbeats.--emperor-curse-toleranceโ sets the Emperor tolerance about cursed vassals. ๐--emperor-pidfileโ writes the Emperor's pid into the file you point at ๐ classic move, keeps that imperial ID on paper.--emperor-tyrantโ puts the Emperor into Tyrant mode ๐ dramatic name, dramatic behavior.--emperor-tyrant-nofollowโ in Tyrant mode, when it's checking for uid/gid, it will not follow symlinks. no shortcuts, bestie ๐--emperor-statsโ runs the Emperor stats server โจ numbers, but for royalty.--emperor-stats-serverโ also runs the Emperor stats server. same energy, different spelling of the flag ๐ซถ--early-emperorโ spawns the emperor as soon as possible โก no waiting around, she's eager.--emperor-broodlordโ runs the emperor in BroodLord mode. that's the name. yes really. iconic ๐--emperor-throttleโ sets the throttling level, in milliseconds, for badly behaved vassals. default is1000๐ misbehave and you get slowed down, fr fr.--emperor-max-throttleโ sets the max throttling level, in milliseconds, for badly behaved vassals. default is3 minutes๐ญ the ceiling of the timeout zone.--emperor-magic-execโ prefixes vassals' config files withexec://if they have the executable bit โจ magic indeed.--emperor-on-demand-extensionโ searches for a text file named vassal name + extension that contains the on demand socket name ๐--emperor-on-demand-extโ same thing, shorter flag: searches for a text file (vassal name + extension) holding the on demand socket name ๐--emperor-on-demand-directoryโ turns on on demand mode, binding to the unix socket in the specified directory, named like the vassal+ .socket๐ฆ--emperor-on-demand-dirโ yep, the short version of that: on demand mode, unix socket in the given directory, named like the vassal+ .socket๐--emperor-on-demand-execโ uses the output of the specified command as the on demand socket name; the vassal name gets passed as the only argument ๐ซก--emperor-extra-extensionโ allows the specified extension in the Emperor; the vassal gets called with--config๐ธ--emperor-extra-extโ the abbreviated twin: allows the specified extension in the Emperor, vassal called with--configโญ--emperor-no-blacklistโ disables the Emperor blacklisting subsystem ๐ซ--emperor-use-cloneโ usesclone()instead offork(), passing the specifiedunshare()flags ๐งฌ--emperor-graceful-shutdownโ makes it use vassals graceful shutdown during ragnarok ๐ yes, ragnarok is the actual word. end times, but politely.--emperor-capโ sets vassals capability โจ--vassals-capโ sets vassals capability (same thing, plural-flavored) ๐--vassal-capโ sets vassals capability (same thing, singular-flavored) ๐
--imperial-monitor-listโ lists the enabled imperial monitors ๐--imperial-monitors-listโ also lists the enabled imperial monitors. one letter of difference, same list ๐--vassals-inheritโ adds config templates to vassals' config, using--inherit๐ง--vassals-includeโ includes config templates into vassals' config, using--includeinstead of--inherit๐--vassals-inherit-beforeโ adds config templates to vassals' config using--inherit, but parses them before the vassal file โฎ๏ธ--vassals-include-beforeโ includes config templates into vassals' config using--includeinstead of--inherit, parsed before the vassal file โช--vassals-start-hookโ runs the specified command before each vassal starts ๐--vassals-stop-hookโ runs the specified command after a vassal's death ๐ชฆ--vassal-sosโ asks the emperor for reinforcement when overloaded ๐--vassal-sos-backlogโ asks the emperor for an SOS if the backlog queue has more items than the value specified ๐ฐ--vassals-setโ automatically sets the specified option (via--set) for every vassal ๐--vassal-setโ same deal, singular flag: automatically sets the specified option (via--set) for every vassal ๐--heartbeatโ announces healthiness to the emperor ๐--reload-mercyโ sets the max time in seconds we wait for workers and other processes to die during reload/shutdown ๐ฐ๏ธ--worker-reload-mercyโ sets the max time in seconds a worker can take to reload/shutdown. default is60๐--mule-reload-mercyโ sets the max time in seconds a mule can take to reload/shutdown. default is60๐ด--exit-on-reloadโ forces exit even if a reload was requested ๐ช--die-on-termโ exit instead of doing a brutal reload onSIGTERMโฐ๏ธ--force-gatewayโ forces the spawn of the first registered gateway without a master ๐-h|--helpโ shows this help ๐ซถ-h|--usageโ shows this help (yes, same-h, different long name) โจ
--print-symโ prints the content of the specified binary symbol ๐--print-symbolโ prints the content of the specified binary symbol (longer flag, same output) ๐-r|--reaperโ callswaitpid(-1,...)after each request to get rid of zombies ๐ง no cap, it's a zombie cleanup service.-R|--max-requestsโ reloads workers after the specified amount of managed requests ๐--max-requests-deltaโ adds(worker_id * delta)to themax_requestsvalue of each worker ๐งฎ--min-worker-lifetimeโ number of seconds a worker must run before being reloaded. default is10โณ--max-worker-lifetimeโ reloads workers after the specified amount of seconds. default is disabled ๐ซ--max-worker-lifetime-deltaโ adds(worker_id * delta)seconds to themax_worker_lifetimevalue of each worker ๐งฎ-z|--socket-timeoutโ sets the internal sockets timeout โฑ๏ธ--no-fd-passingโ disables file descriptor passing ๐ซ--locksโ creates the specified number of shared locks ๐--lock-engineโ sets the lock engine โ๏ธ--ftokโ sets the ipcsem key viaftok()for avoiding duplicates ๐--persistent-ipcsemโ does not remove ipcsem's on shutdown ๐ซถ they stay.-A|--sharedareaโ creates a raw shared memory area of the specified pages. note: it supports keyval too โจ--safe-fdโ do not close the specified file descriptor ๐--fd-safeโ do not close the specified file descriptor (same safety, flags swapped around) ๐
--cacheโ creates a shared cache containing the given elements ๐๏ธ--cache-blocksizeโ sets the cache blocksize ๐ฆ--cache-storeโ enables a persistent cache to disk ๐พ--cache-store-syncโ sets the frequency of sync for the persistent cache ๐--cache-no-expireโ disables the auto sweep of expired items ๐งนโ--cache-expire-freqโ sets the frequency of cache sweeper scans. default is3 secondsโฒ๏ธ--cache-report-freed-itemsโ constantly reports the cache item freed by the sweeper. use only for debug ๐--cache-udp-serverโ binds the cache udp server (used only for set/update/delete) to the specified socket ๐ก--cache-udp-nodeโ sends cache update/deletion to the specified cache udp server ๐ค--cache-syncโ copies the whole content of another uWSGI cache server on server startup ๐--cache-use-last-modifiedโ updates thelast_modified_attimestamp on every cache item modification. default is disabled ๐--add-cache-itemโ adds an item in the cache โ--load-file-in-cacheโ loads a static file in the cache ๐--load-file-in-cache-gzipโ loads a static file in the cache with gzip compression ๐๏ธ--cache2โ creates a new generation shared cache (keyval syntax) ๐ฑ--queueโ enables the shared queue ๐ฌ--queue-blocksizeโ sets the queue blocksize ๐--queue-storeโ enables a persistent queue to disk ๐พ--queue-store-syncโ sets the frequency of sync for the persistent queue ๐
-Q|--spoolerโ runs a spooler on the specified directory ๐--spooler-externalโ maps spoolers' requests to a spooler directory managed by an external instance ๐--spooler-orderedโ tries to order the execution of spooler tasks ๐--spooler-chdirโchdir()s to the specified directory before each spooler task ๐--spooler-processesโ sets the number of processes for spoolers ๐ฏ--spooler-quietโ do not be verbose with spooler tasks ๐คซ--spooler-max-tasksโ sets the maximum number of tasks to run before recycling a spooler ๐--spooler-harakiriโ sets the harakiri timeout for spooler tasks ๐ก๏ธ--spooler-frequencyโ sets the spooler frequency ๐ต--spooler-freqโ sets the spooler frequency (short flag, same beat) ๐ถ--muleโ adds a mule ๐ด--mulesโ adds the specified number of mules ๐ด๐ด๐ด--farmโ adds a mule farm ๐--mule-msg-sizeโ sets the mule message buffer size ๐จ--signalโ sends a uwsgi signal to a server ๐ถ--signal-bufsizeโ sets the buffer size for the signal queue ๐ฅ--signals-bufsizeโ sets the buffer size for the signal queue (same, plural flag representation) ๐ค--signal-timerโ adds a timer. syntax:<signal> <seconds>โฐ--timerโ adds a timer. syntax:<signal> <seconds>โฐ (same timer, less typing)--signal-rbtimerโ adds a redblack timer. syntax:<signal> <seconds>๐ณ--rbtimerโ adds a redblack timer. syntax:<signal> <seconds>๐ณ (short flag energy)--rpc-maxโ maximum number of rpc slots. default:64๐ฐ-L|--disable-loggingโ disables request logging ๐
--flockโ locks the specified file before starting, and exits if it's locked ๐--flock-waitโ locks the specified file before starting, and waits if it's locked โณ--flock2โ locks the specified file after logging/daemon setup, exits if locked ๐--flock-wait2โ locks the specified file after logging/daemon setup, waits if locked โ--pidfileโ creates a pidfile, before the privileges drop ๐--pidfile2โ creates a pidfile, after the privileges drop ๐--safe-pidfileโ creates a safe pidfile, before the privileges drop ๐--safe-pidfile2โ creates a safe pidfile, after the privileges drop ๐--chrootโchroot()s to the specified directory ๐--pivot-rootโpivot_root()s to the specified directories. new_root and put_old must be separated with a space ๐ณ--pivot_rootโpivot_root()s to the specified directories. new_root and put_old must be separated with a space (underscore edition ๐ซถ)--uidโsetuidto the specified user/uid ๐ค--gidโsetgidto the specified group/gid ๐ฅ--add-gidโ adds the specified group id to the process credentials โ--immediate-uidโsetuidto the specified user/uid IMMEDIATELY โก--immediate-gidโsetgidto the specified group/gid IMMEDIATELY โก--no-initgroupsโ disables additional groups set viainitgroups()๐ซ--capโ sets process capability โจ--unshareโunshare()s part of the processes and puts it in a new namespace ๐งฌ--unshare2โunshare()s part of the processes and puts it in a new namespace, but after the rootfs change ๐--setns-socketโ exposes a unix socket returning namespace fds from/proc/self/ns๐--setns-socket-skipโ skips the specified entry when sending setns file descriptors โญ๏ธ--setns-skipโ skips the specified entry when sending setns file descriptors (short flag, same skip) ๐ซ--setnsโ joins a namespace created by an external uWSGI instance ๐ค--setns-preopenโ opens/proc/self/nsas soon as possible and caches fds ๐๏ธ
โจ OPTIONS โจ
--jailedโ marks the instance as jailed, which forces the execution ofpost_jailhooks. so if you want those hooks to actually do their thing, this is the vibe. no cap. ๐--reforkโ runsfork()again after privileges drop. useful for jailing systems. ๐ฆ--re-forkโ bestie, this is literally the same as--refork:fork()again after privileges drop, useful for jailing systems. two names, one slay. โจ--refork-as-rootโ runsfork()again before privileges drop. useful for jailing systems. ๐--re-fork-as-rootโ again, same as above:fork()again before privileges drop. useful for jailing systems. ๐--refork-post-jailโ runsfork()again after jailing. useful for jailing systems. ๐--re-fork-post-jailโ yep, same energy:fork()again after jailing. useful for jailing systems. ๐
--hook-asapโ run the specified hook as soon as possible. ASAP, literally. โก--hook-pre-jailโ run the specified hook before jailing. ๐--hook-post-jailโ run the specified hook after jailing. ๐--hook-in-jailโ run the specified hook in jail after initialization. ๐ข--hook-as-rootโ run the specified hook before privileges drop. ๐--hook-as-userโ run the specified hook after privileges drop. ๐--hook-as-user-atexitโ run the specified hook before app exit and reload. ๐--hook-pre-appโ run the specified hook before app loading. ๐ฆ--hook-post-appโ run the specified hook after app loading. ๐--hook-post-forkโ run the specified hook after each fork. ๐ด--hook-acceptingโ run the specified hook after each worker enters the accepting phase. ๐ง--hook-accepting1โ run the specified hook after the first worker enters the accepting phase. ๐ฅ--hook-accepting-onceโ run the specified hook after each worker enters the accepting phase (once per-instance). note the hyphen inper-instance. ๐--hook-accepting1-onceโ run the specified hook after the first worker enters the accepting phase (once per instance). no hyphen here, bestie. ๐--hook-master-startโ run the specified hook when the Master starts. ๐--hook-touchโ run the specified hook when the specified file is touched (syntax:<file> <action>). ๐--hook-emperor-startโ run the specified hook when the Emperor starts. ๐๐--hook-emperor-stopโ run the specified hook when the Emperor sends a stop message. ๐--hook-emperor-reloadโ run the specified hook when the Emperor sends a reload message. ๐--hook-emperor-lostโ run the specified hook when the Emperor connection is lost. ๐ญ--hook-as-vassalโ run the specified hook beforeexec()ing the vassal. ๐ฃ--hook-as-emperorโ run the specified hook in the emperor after the vassal has been started. ๐--hook-as-muleโ run the specified hook in each mule. ๐ด--hook-as-gatewayโ run the specified hook in each gateway. ๐ช
--after-request-hookโ run the specified function/symbol after each request. ๐--after-request-callโ run the specified function/symbol after each request. same thing, different name, still iconic. โจ--exec-asapโ run the specified command as soon as possible. โก--exec-pre-jailโ run the specified command before jailing. ๐--exec-post-jailโ run the specified command after jailing. ๐--exec-in-jailโ run the specified command in jail after initialization. ๐ข--exec-as-rootโ run the specified command before privileges drop. ๐--exec-as-userโ run the specified command after privileges drop. ๐--exec-as-user-atexitโ run the specified command before app exit and reload. ๐--exec-pre-appโ run the specified command before app loading. ๐ฆ--exec-post-appโ run the specified command after app loading. ๐--exec-as-vassalโ run the specified command beforeexec()ing the vassal. ๐ฃ--exec-as-emperorโ run the specified command in the emperor after the vassal has been started. ๐--mount-asapโ mount filesystem as soon as possible. โก--mount-pre-jailโ mount filesystem before jailing. ๐--mount-post-jailโ mount filesystem after jailing. ๐--mount-in-jailโ mount filesystem in jail after initialization. ๐ข--mount-as-rootโ mount filesystem before privileges drop. ๐--mount-as-vassalโ mount filesystem beforeexec()ing the vassal. ๐ฃ--mount-as-emperorโ mount filesystem in the emperor after the vassal has been started. ๐--umount-asapโ unmount filesystem as soon as possible. โก--umount-pre-jailโ unmount filesystem before jailing. ๐--umount-post-jailโ unmount filesystem after jailing. ๐--umount-in-jailโ unmount filesystem in jail after initialization. ๐ข--umount-as-rootโ unmount filesystem before privileges drop. ๐--umount-as-vassalโ unmount filesystem beforeexec()ing the vassal. ๐ฃ--umount-as-emperorโ unmount filesystem in the emperor after the vassal has been started. ๐--wait-for-interfaceโ wait for the specified network interface to come up before running root hooks. ๐ก--wait-for-interface-timeoutโ set the timeout forwait-for-interface. โณ--wait-interfaceโ wait for the specified network interface to come up before running root hooks. ๐ก--wait-interface-timeoutโ set the timeout forwait-for-interface. โณ--wait-for-ifaceโ wait for the specified network interface to come up before running root hooks. ๐ก--wait-for-iface-timeoutโ set the timeout forwait-for-interface. โณ--wait-ifaceโ wait for the specified network interface to come up before running root hooks. ๐ก--wait-iface-timeoutโ set the timeout forwait-for-interface. โณ--wait-for-fsโ wait for the specified filesystem item to appear before running root hooks. ๐--wait-for-fileโ wait for the specified file to appear before running root hooks. ๐--wait-for-dirโ wait for the specified directory to appear before running root hooks. ๐--wait-for-mountpointโ wait for the specified mountpoint to appear before running root hooks. ๐--wait-for-fs-timeoutโ set the timeout forwait-for-fs/file/dir. โณ--wait-for-socketโ wait for the specified socket to be ready before loading apps. ๐--wait-for-socket-timeoutโ set the timeout forwait-for-socket. โณ--call-asapโ call the specified function as soon as possible. โก--call-pre-jailโ call the specified function before jailing. ๐--call-post-jailโ call the specified function after jailing. ๐--call-in-jailโ call the specified function in jail after initialization. ๐ข--call-as-rootโ call the specified function before privileges drop. ๐--call-as-userโ call the specified function after privileges drop. ๐--call-as-user-atexitโ call the specified function before app exit and reload. ๐--call-pre-appโ call the specified function before app loading. ๐ฆ--call-post-appโ call the specified function after app loading. ๐--call-as-vassalโ call the specifiedfunction()beforeexec()ing the vassal. ๐ฃ--call-as-vassal1โ call the specifiedfunction(char *)beforeexec()ing the vassal. ๐ฃ--call-as-vassal3โ call the specifiedfunction(char *, uid_t, gid_t)beforeexec()ing the vassal. ๐ฃ--call-as-emperorโ call the specifiedfunction()in the emperor after the vassal has been started. ๐--call-as-emperor1โ call the specifiedfunction(char *)in the emperor after the vassal has been started. ๐--call-as-emperor2โ call the specifiedfunction(char *, pid_t)in the emperor after the vassal has been started. ๐--call-as-emperor4โ call the specifiedfunction(char *, pid_t, uid_t, gid_t)in the emperor after the vassal has been started. ๐--iniโ load config from ini file. ๐๏ธ-y|--yamlโ load config from yaml file. ๐-y|--ymlโ load config from yaml file. ๐-j|--jsonโ load config from json file. ๐งพ-j|--jsโ load config from json file. ๐งพ--weightโ weight of the instance (used by clustering/lb/subscriptions). โ๏ธ--auto-weightโ set weight of the instance (used by clustering/lb/subscriptions) automatically. ๐ค--no-serverโ force no-server mode. ๐ซ--command-modeโ force command mode. โจ๏ธ--no-defer-acceptโ disable deferred-accept on sockets. ๐--tcp-nodelayโ enable TCP NODELAY on each request. ๐--so-keepaliveโ enable TCP KEEPALIVEs. ๐--so-send-timeoutโ set SO_SNDTIMEO. โณ--socket-send-timeoutโ set SO_SNDTIMEO. โณ--so-write-timeoutโ set SO_SNDTIMEO. โณ--socket-write-timeoutโ set SO_SNDTIMEO. โณ--socket-sndbufโ set SO_SNDBUF. ๐ฆ--socket-rcvbufโ set SO_RCVBUF. ๐ฅ--shutdown-socketsโ force callingshutdown()in addition toclose()when sockets are destroyed. ๐ฅ--limit-asโ limit processes address space/vsz. ๐ง--limit-nprocโ limit the number of spawnable processes. ๐ฅ--reload-on-asโ reload if address space is higher than specified megabytes. ๐--reload-on-rssโ reload if rss memory is higher than specified megabytes. ๐--evil-reload-on-asโ force the master to reload a worker if its address space is higher than specified megabytes. ๐--evil-reload-on-rssโ force the master to reload a worker if its rss memory is higher than specified megabytes. ๐--mem-collector-freqโ set the memory collector frequency when evil reloads are in place. ๐งน--reload-on-fdโ reload if the specified file descriptor is ready. ๐--brutal-reload-on-fdโ brutal reload if the specified file descriptor is ready. ๐--ksmโ enable Linux KSM. ๐ง--pcre-jitโ enable pcre jit (if available). โก--never-swapโ lock all memory pages avoiding swapping. ๐--touch-reloadโ reload uWSGI if the specified file is modified/touched. ๐--touch-workers-reloadโ trigger reload of (only) workers if the specified file is modified/touched. ๐ท--touch-mules-reloadโ reload mules if the specified file is modified/touched. ๐ด--touch-spoolers-reloadโ reload spoolers if the specified file is modified/touched. ๐งต--touch-chain-reloadโ trigger chain reload if the specified file is modified/touched. โ๏ธ--touch-logrotateโ trigger logrotation if the specified file is modified/touched. ๐--touch-logreopenโ trigger log reopen if the specified file is modified/touched. ๐--touch-execโ run command when the specified file is modified/touched (syntax:file command). ๐--touch-signalโ keeps an eye on a file for you, and when it gets modified/touched it fires off a signal. Bestie, the syntax is literally: file signal ๐--fs-reloadโ when the filesystem object you named gets modified, it does a graceful reload. chill little refresh, no drama โจ--fs-brutal-reloadโ same energy but it's giving main character rage: when the filesystem object is modified, it does a brutal reload. no soft launch here ๐ญ--fs-signalโ when the specified filesystem object gets modified, it raises a uwsgi signal. syntax again bestie: file signal ๐ธ--check-mountpointโ if a filesystem is no longer reachable, it straight up destroys the instance. lowkey savage but it's genuinely useful for reliable Fuse management ๐ซถ--mountpoint-checkโ exact same vibe: if a filesystem is no longer reachable, the instance gets destroyed. again, useful for reliable Fuse management โจ--check-mountโ yep, same thing: instance gets destroyed if a filesystem is no more reachable, and it's useful for reliable Fuse management ๐--mount-checkโ the fourth sibling of this mount-check family: destroys the instance when a filesystem is no more reachable. useful for reliable Fuse management, as always ๐--propagate-touchโ the "over-engineering option" for systems with flaky signal management. iykyk ๐ญ--limit-postโ limits the request body. that's it, that's the option ๐--no-orphansโ automatically kills workers if the master dies. but fr fr, this can be dangerous for availability, so think before you slay ๐--prioโ sets the priority of processes/threads ๐--cpu-affinityโ sets the cpu affinity, so your processes know exactly which core is their home ๐--post-bufferingโ sets the size in bytes after which it'll buffer to disk instead of memory ๐พ--post-buffering-bufsizeโ sets the buffer size forread()in post buffering mode โญ--body-read-warningโ sets how much memory allocation (in megabytes) for the request body is allowed before it starts printing a warning ๐ฆ--upload-progressโ turns on creation of.jsonfiles in the directory you specify, while a file upload is happening ๐โจ--no-default-appโ nope, we're not falling back to the default app ๐--manage-script-nameโ automatically rewritesSCRIPT_NAMEandPATH_INFOfor you. it just handles it ๐--ignore-script-nameโ ignoresSCRIPT_NAMEentirely, no thoughts head empty ๐ซถ--catch-exceptionsโ reports exceptions as http output. discouraged though, bestie โ use only for testing ๐งช--reload-on-exceptionโ reloads a worker when an exception gets raised ๐--reload-on-exception-typeโ reloads a worker when a specific exception type is raised ๐ฅ--reload-on-exception-valueโ reloads a worker when a specific exception value is raised ๐--reload-on-exception-reprโ reloads a worker when a specific exception type+value (language-specific) is raised ๐ธ--exception-handlerโ adds an exception handler ๐--enable-metricsโ turns on the metrics subsystem ๐โจ--metricโ adds a custom metric ๐--metric-thresholdโ adds a metric threshold/alarm ๐จ--metric-alarmโ adds a metric threshold/alarm (same thing, different name bestie) ๐จ--alarm-metricโ yep, adds a metric threshold/alarm again ๐--metrics-dirโ exports metrics as text files into the directory you specify ๐--metrics-dir-restoreโ restores the last value taken from the metrics dir โช--metric-dirโ exports metrics as text files to the specified directory (singular twin of the above) ๐--metric-dir-restoreโ restores the last value taken from the metrics dir ๐ซ--metrics-no-coresโ disables generation of cores-related metrics ๐ซ--udpโ runs the udp server on the address you specify ๐ก--statsโ enables the stats server on the specified address ๐--stats-serverโ enables the stats server on the specified address (same energy, another name) โจ--stats-httpโ prefixes the stats server json output with http headers ๐--stats-minifiedโ minifies the statistics json output. small and cute ๐--stats-minโ minifies statistics json output (yeah, the short name) ๐--stats-pushโ pushes the stats json to the destination you specify ๐--stats-pusher-default-freqโ sets the default frequency of stats pushers โฑ๏ธ--stats-pushers-default-freqโ sets the default frequency of stats pushers (plural version, same deal) ๐ฐ๏ธ--stats-no-coresโ disables generation of cores-related stats ๐ซ--stats-no-metricsโ does not include metrics in the stats output ๐--multicastโ subscribes to the multicast group you specify ๐ป--multicast-ttlโ sets the multicast ttl โณ--multicast-loopโ sets the multicast loop, and the default is1๐--master-fifoโ enables the master fifo ๐๏ธ--notify-socketโ enables the notification socket ๐--subscription-notify-socketโ sets the notification socket used for subscriptions ๐ฌ--legionโ you become a member of a legion โ๏ธ๐--legion-mcastโ become a member of a legion (it's a shortcut for multicast) ๐--legion-nodeโ adds a node to a legion ๐งฉ--legion-freqโ sets the frequency of legion packets ๐ถ--legion-toleranceโ sets the tolerance of the legion subsystem ๐ซถ--legion-death-on-lord-errorโ if one of the lord hooks fails, the node declares itself a dead node for the amount of seconds you specify ๐--legion-death-on-lord-errorโ (yes we said it) declares itself dead for the specified number of seconds when a lord hook fails ๐ญ--legion-skew-toleranceโ sets the clock skew tolerance of the legion subsystem, and the default is 60 seconds โฐ--legion-lordโ the action to call on Lord election ๐--legion-unlordโ the action to call on Lord dismiss ๐--legion-setupโ the action to call on legion setup ๐ ๏ธ--legion-deathโ the action to call on legion death (that's the shutdown of the instance) โฐ๏ธ--legion-joinโ the action to call on legion join (the first time quorum is reached) ๐ค--legion-node-joinedโ the action to call when a new node joins the legion ๐--legion-node-leftโ the action to call when a node leaves the legion ๐--legion-quorumโ sets the quorum of a legion ๐ข--legion-scrollโ sets the scroll of a legion ๐--legion-scroll-max-sizeโ sets the max size of the legion scroll buffer ๐ฆ--legion-scroll-list-max-sizeโ sets the max size of the legion scroll list buffer ๐--subscriptions-sign-checkโ sets the digest algorithm and certificate directory for the secured subscription system ๐--subscriptions-sign-check-toleranceโ sets the maximum tolerance (in seconds) of clock skew for the secured subscription system โณ--subscriptions-sign-skip-uidโ skips the signature check for the specified uid when using unix sockets credentials ๐--subscriptions-credentials-checkโ adds a directory to search for subscriptions key credentials ๐--subscriptions-use-credentialsโ enables management ofSCM_CREDENTIALSin subscriptions UNIX sockets ๐งพ--subscription-algoโ sets the load balancing algorithm for the subscription system โ๏ธ--subscription-dotsplitโ tries to fallback to the next part (dot based) in the subscription key ๐ฏ--subscribe-toโ subscribes to the subscription server you specify ๐ก--stโ subscribe to the specified subscription server (short and sweet) โจ--subscribeโ subscribes to the specified subscription server ๐ซถ--subscribe2โ subscribes to the specified subscription server using advanced keyval syntax. fancy ๐--subscribe-freqโ sends the subscription announce at the interval you specify โฐ--subscription-toleranceโ sets tolerance for subscription servers ๐๏ธ--unsubscribe-on-graceful-reloadโ forces the unsubscribe request even during a graceful reload ๐ช--start-unsubscribedโ configures subscriptions but doesn't send them. useful with master fifo ๐ด--subscribe-with-modifier1โ forces the specififed (yes, that's spelled that way in the original, bestie) modifier1 when subscribing ๐ง--snmpโ enables the embedded snmp server ๐ณ--snmp-communityโ sets the snmp community string ๐๏ธ--ssl-verboseโ be verbose about SSL errors. spill the tea โ--ssl-verify-depthโ sets the maximum certificate verification depth ๐--sniโ adds an SNI-governed SSL context ๐--sni-dirโ checks for cert/key/client_ca files in the directory you specify and creates a sni/ssl context on demand ๐๏ธ--sni-dir-ciphersโ sets the ssl ciphers for thesni-diroption ๐--ssl-enable3โ enables SSLv3, and it's insecure ๐ฌ--ssl-enable-sslv3โ enables SSLv3, insecure (same warning bestie) โ ๏ธ--ssl-enable-tlsv1โ enables TLSv1, insecure ๐ฉ--ssl-optionโ sets a raw ssl option, and the value is numeric ๐ข--sni-regexpโ adds an SNI-governed SSL context, where the key is a regexp ๐ง--ssl-tmp-dirโ stores ssl-related temp files in the directory you specify ๐๏ธ--check-intervalโ sets the interval (in seconds) of master checks โฑ๏ธ--forkbomb-delayโ when a forkbomb is detected, it sleeps for the number of seconds you specify ๐ด--binary-pathโ forces the binary path ๐--privileged-binary-patchโ patches the uwsgi binary with a new command (this happens before privileges drop) ๐ฉน--unprivileged-binary-patchโ patches the uwsgi binary with a new command (this happens after privileges drop) ๐ฉน--privileged-binary-patch-argโ patches the uwsgi binary with a new command and arguments (before privileges drop) ๐งฐ--unprivileged-binary-patch-argโ patches the uwsgi binary with a new command and arguments (after privileges drop) ๐งฐ--asyncโ enables async mode with the number of cores you specify โก--max-fdโ sets the maximum number of file descriptors. requires root privileges, bestie ๐--logtoโ sets the logfile/udp address ๐--logto2โ logs to the specified file or udp address after privileges drop ๐ค--log-formatโ sets the advanced format for request logging ๐๏ธ--logformatโ sets advanced format for request logging (same thing, no space) โ๏ธ--logformat-strftimeโ applies strftime to logformat output ๐๏ธ--log-format-strftimeโ applies strftime to logformat output (the hyphenated twin) ๐--logfile-chownโ chowns logfiles ๐ค--logfile-chmodโ chmods logfiles ๐ง--log-syslogโ logs to syslog ๐ป--log-socketโ sends logs to the socket you specify ๐ณ๏ธ--req-loggerโ sets/appends a request logger ๐งพ--logger-reqโ sets/appends a request logger (same deal, flipped name) ๐--loggerโ sets/appends a logger ๐--logger-listโ lists enabled loggers ๐--loggers-listโ lists enabled loggers (plural version) ๐๏ธ--threaded-loggerโ offloads log writing to a thread ๐งต--log-encoderโ adds an item in the log encoder chain โ๏ธ--log-req-encoderโ adds an item in the log req encoder chain ๐--log-drainโ drains (aka does not show) log lines matching the regexp you specify ๐ซ--log-filterโ shows only log lines matching the regexp you specify ๐--log-routeโ logs to the named logger you specify if the regexp applied on the logline matches ๐ฃ๏ธ--log-req-routeโ logs requests to the named logger you specify if the regexp applied on the logline matches ๐ค๏ธ--use-abortโ callsabort()on segfault/fpe. could be useful for generating a core dump ๐ฅ--alarmโ creates a new alarm. syntax:<alarm> <plugin:args>๐จ--alarm-cheapโ okay so instead of making a dedicated thread for every curl-based alarm, it uses the main alarm thread. Thread budget stays cute. ๐--alarm-freqโ tune the anti-loop alarm system, default is3seconds. So if your alarms are doing too much, this is the vibe check interval. โฐ--alarm-fdโ raises the alarm you pick when an fd is read for read. By default it reads1byte, but set it to8foreventfd. Bestie, numbers matter. ๐ข--alarm-segfaultโ raises the alarm you specify when the segmentation fault handler runs. Ouchie but alerted. ๐--segfault-alarmโ same as above: raises your chosen alarm when the segfault handler is executed. Twin energy. ๐ซถ--alarm-backlogโ raises the specified alarm when the socket backlog queue is full. Sheโs packed, bestie. ๐ญ--backlog-alarmโ also raises your specified alarm when the socket backlog queue is full. Same thing, different name. ๐--lq-alarmโ raises the specified alarm when the socket backlog queue is full. The LQ said โwe full.โ ๐--alarm-lqโ yep, raises the specified alarm when the socket backlog queue is full. Alias behavior, same facts. โจ--alarm-listen-queueโ raises the specified alarm when the socket backlog queue is full. Listen queue said no vacancy. ๐ซ--listen-queue-alarmโ raises the specified alarm when the socket backlog queue is full. Same alarm vibe. ๐--log-alarmโ raise the specified alarm when a log line matches the specified regexp. Syntax is<alarm>[,alarm...] <regexp>. So you can ping multiple alarms, comma-separated. ๐ฅ--alarm-logโ raise the specified alarm when a log line matches the specified regexp. Syntax:<alarm>[,alarm...] <regexp>. Itโs the alias twin, still exact. ๐ธ--not-log-alarmโ skip the specified alarm when a log line matches the specified regexp. Syntax:<alarm>[,alarm...] <regexp>. So itโs the opposite: no alarm for this match. ๐--not-alarm-logโ skip the specified alarm when a log line matches the specified regexp. Syntax:<alarm>[,alarm...] <regexp>. Same skip, alias name. ๐--alarm-listโ list enabled alarms. Show me the roster, bestie. ๐--alarms-listโ list enabled alarms. Plural alias, same list. ๐--alarm-msg-sizeโ set the max size of an alarm message, default8192. Keep it under the limit or itโs giving truncation. โ๏ธ--log-masterโ delegate logging to the master process. Let the master handle the gossip. ๐--log-master-bufsizeโ set the buffer size for the master logger. Bigger log messages will be truncated, so donโt write a novel. ๐--log-master-streamโ create the master logpipe asSOCK_STREAM. Stream mode, slay. ๐--log-master-req-streamโ create the master requests logpipe asSOCK_STREAM. Requests logs get stream energy too. ๐ง--log-reopenโ reopen log after reload. Fresh log, same me. ๐--log-truncateโ truncate log on startup. Clean slate, periodt. ๐งผ--log-maxsizeโ set maximum logfile size. When it hits the cap, rotation time. ๐--log-backupnameโ set logfile name after rotation. So the old log gets a new name. ๐พ--logdateโ prefix logs with date or a strftime string. Time stamps but make it custom. ๐๏ธ--log-dateโ prefix logs with date or a strftime string. Alias, same timestamp energy. ๐ฐ๏ธ--log-prefixโ prefix logs with a string. Put your fave little phrase in front. ๐ฌ--log-zeroโ log responses without body. Empty body? Still logged. ๐ซฅ--log-slowโ log requests slower than the specified number of milliseconds. Slow queens get noticed. ๐ข--log-4xxโ log requests with a 4xx response. Client errors, we see you. ๐--log-5xxโ log requests with a 5xx response. Server errors, we see you too. ๐จ--log-bigโ log requests bigger than the specified size. Big request energy. ๐--log-sendfileโ log sendfile requests. Sendfile moment, logged. ๐ค--log-ioerrorโ log requests with io errors. I/O said oops. ๐--log-microsโ report response time in microseconds instead of milliseconds. Tiny numbers, precise. ๐ฌ--log-x-forwarded-forโ use the ip fromX-Forwarded-Forheader instead ofREMOTE_ADDR. Real IP detective work. ๐ต๏ธ--master-as-rootโ leave master process running as root. Master stays root, no drop. ๐--drop-after-initโ run privileges drop after plugin initialization, superseded bydrop-after-apps. So itโs older behavior, anddrop-after-appswins. ๐ต--drop-after-appsโ run privileges drop after apps loading, superseded bymaster-as-root. Older-ish;master-as-roottakes over. ๐ฆ--force-cwdโ force the initial working directory to the specified value. No wandering, bestie. ๐--binshโ override/bin/sh(used by exec hooks, it always fallback to/bin/sh). So you can point it elsewhere, but it always falls back to/bin/sh. ๐--chdirโ chdir to specified directory before apps loading. Move first, load later. ๐--chdir2โ chdir to specified directory after apps loading. Load first, move later. ๐--lazyโ set lazy mode (load apps in workers instead of master). Workers do the app loading. ๐ฆฅ--lazy-appsโ load apps in each worker instead of the master. Every worker gets its own app load, no copy-paste from master. ๐งโ๐ณ--cheapโ set cheap mode (spawn workers only after the first request). No request? No workers. Budget queen. ๐ธ--cheaperโ set cheaper mode (adaptive process spawning). Workers scale with the vibe. ๐--cheaper-initialโ set the initial number of processes to spawn in cheaper mode. Starting lineup, bestie. ๐--cheaper-algoโ choose to algorithm used for adaptive process spawning. Pick your scaling algorithm. ๐ง--cheaper-stepโ number of additional processes to spawn at each overload. Overloaded? Spawn this many more. โ--cheaper-overloadโ increase workers after specified overload. Threshold said โnow we grow.โ ๐ฑ--cheaper-algo-listโ list enabled cheapers algorithms. Show me the algo menu. ๐--cheaper-algos-listโ list enabled cheapers algorithms. Plural alias, same menu. ๐๏ธ--cheaper-listโ list enabled cheapers algorithms. Yep, also lists them. ๐งพ--cheaper-rss-limit-softโ donโt spawn new workers if total resident memory usage of all workers is higher than this limit. Soft boundary, donโt cross. ๐งท--cheaper-rss-limit-hardโ if total workers resident memory usage is higher try to stop workers. Hard boundary, workers get stopped. ๐--idleโ set idle mode (put uWSGI in cheap mode after inactivity). Chill out, go cheap after nothing happens. ๐ด--die-on-idleโ shutdown uWSGI when idle. Idle? Bye. ๐--mountโ load application under mountpoint. App goes under the mountpoint. โฐ๏ธ--worker-mountโ load application under mountpoint in the specified worker or after workers spawn. Worker-specific or post-spawn mount. ๐ท--threadsโ run each worker in prethreaded mode with the specified number of threads. Threads go brrr. ๐งต--thread-stacksizeโ set threads stacksize. Stack size, set it. ๐--threads-stacksizeโ set threads stacksize. Alias, same stack. ๐--thread-stack-sizeโ set threads stacksize. Another alias, same stack size. ๐--threads-stack-sizeโ set threads stacksize. Fourth alias, still stack size. ๐--vhostโ enable virtualhosting mode (based onSERVER_NAMEvariable). Vhost based onSERVER_NAME. ๐--vhost-hostโ enable virtualhosting mode (based onHTTP_HOSTvariable). Vhost based onHTTP_HOST. ๐ก--routeโ add a route. Just add a route, bestie. ๐ฃ๏ธ--route-hostโ add a route based onHostheader. Route match onHost. ๐ท๏ธ--route-uriโ add a route based onREQUEST_URI. Route match onREQUEST_URI. ๐--route-qsโ add a route based onQUERY_STRING. Route match onQUERY_STRING. โ--route-remote-addrโ add a route based onREMOTE_ADDR. Route match onREMOTE_ADDR. ๐--route-user-agentโ add a route based onHTTP_USER_AGENT. Route match onHTTP_USER_AGENT. ๐ต๏ธ--route-remote-userโ add a route based onREMOTE_USER. Route match onREMOTE_USER. ๐--route-refererโ add a route based onHTTP_REFERER. Route match onHTTP_REFERER. ๐--route-labelโ add a routing label (for use with goto). Labels for routes, goto vibes. ๐ท๏ธ--route-ifโ add a route based on condition. Conditional route, if-coded. ๐ค--route-if-notโ add a route based on condition (negate version). Same but negated. ๐--route-runโ always run the specified route action. No condition, just run it. ๐--final-routeโ add a final route. Final route, endgame. ๐--final-route-statusโ add a final route for the specified status. Final route matching status. ๐ข--final-route-hostโ add a final route based onHostheader. Final route onHost. ๐ท๏ธ--final-route-uriโ add a final route based onREQUEST_URI. Final route onREQUEST_URI. ๐--final-route-qsโ add a final route based onQUERY_STRING. Final route onQUERY_STRING. โ--final-route-remote-addrโ add a final route based onREMOTE_ADDR. Final route onREMOTE_ADDR. ๐--final-route-user-agentโ add a final route based onHTTP_USER_AGENT. Final route onHTTP_USER_AGENT. ๐ต๏ธ--final-route-remote-userโ add a final route based onREMOTE_USER. Final route onREMOTE_USER. ๐--final-route-refererโ add a final route based onHTTP_REFERER. Final route onHTTP_REFERER. ๐--final-route-labelโ add a final routing label (for use with goto). Final label, goto-ready. ๐ท๏ธ--final-route-ifโ add a final route based on condition. Final conditional route. ๐ค--final-route-if-notโ add a final route based on condition (negate version). Final conditional route, negated. ๐--final-route-runโ always run the specified final route action. Final route action, always. ๐--error-routeโ add an error route. Error route, oopsie path. ๐จ--error-route-statusโ add an error route for the specified status. Error route matching status. ๐ข--error-route-hostโ add an error route based onHostheader. Error route onHost. ๐ท๏ธ--error-route-uriโ add an error route based onREQUEST_URI. Error route onREQUEST_URI. ๐--error-route-qsโ add an error route based onQUERY_STRING. Error route onQUERY_STRING. โ--error-route-remote-addrโ add an error route based onREMOTE_ADDR. Error route onREMOTE_ADDR. ๐--error-route-user-agentโ add an error route based onHTTP_USER_AGENT. Error route onHTTP_USER_AGENT. ๐ต๏ธ--error-route-remote-userโ add an error route based onREMOTE_USER. Error route onREMOTE_USER. ๐--error-route-refererโ add an error route based onHTTP_REFERER. Error route onHTTP_REFERER. ๐--error-route-labelโ add an error routing label (for use with goto). Error label, goto-ready. ๐ท๏ธ--error-route-ifโ add an error route based on condition. Error route, conditional. ๐ค--error-route-if-notโ add an error route based on condition (negate version). Error route, negated conditional. ๐--error-route-runโ always run the specified error route action. Error route action, always. ๐--response-routeโ add a response route. Response route, route the reply. ๐ฌ--response-route-statusโ add a response route for the specified status. Response route matching status. ๐ข--response-route-hostโ add a response route based onHostheader. Response route onHost. ๐ท๏ธ--response-route-uriโ add a response route based onREQUEST_URI. Response route onREQUEST_URI. ๐--response-route-qsโ add a response route based onQUERY_STRING. Response route onQUERY_STRING. โ--response-route-remote-addrโ add a response route based onREMOTE_ADDR. Response route onREMOTE_ADDR. ๐--response-route-user-agentโ add a response route based onHTTP_USER_AGENT. Response route onHTTP_USER_AGENT. ๐ต๏ธ--response-route-remote-userโ add a response route based onREMOTE_USER. Response route onREMOTE_USER. ๐--response-route-refererโ add a response route based onHTTP_REFERER. Response route onHTTP_REFERER. ๐--response-route-labelโ add a response routing label (for use with goto). Response label, goto-ready. ๐ท๏ธ--response-route-ifโ add a response route based on condition. Response route, conditional. ๐ค--response-route-if-notโ add a response route based on condition (negate version). Response route, negated. ๐--response-route-runโ always run the specified response route action. Response route action, always. ๐--router-listโ list enabled routers. Router roster, please. ๐--routers-listโ list enabled routers. Plural alias, same roster. ๐--error-page-403โ add an error page (html) for managed 403 response. Custom 403 HTML, slay. ๐ซ--error-page-404โ add an error page (html) for managed 404 response. Custom 404 HTML, iconic. ๐--error-page-500โ add an error page (html) for managed 500 response. Custom 500 HTML, dramatic. ๐ฅ--websockets-ping-freqโ set the frequency (in seconds) of websockets automatic ping packets. Ping timer in seconds. ๐--websocket-ping-freqโ set the frequency (in seconds) of websockets automatic ping packets. Alias, same ping timer. ๐--websockets-pong-toleranceโ set the tolerance (in seconds) of websockets ping/pong subsystem. Pong patience in seconds. โณ--websocket-pong-toleranceโ set the tolerance (in seconds) of websockets ping/pong subsystem. Alias, same tolerance. โณ--websockets-max-sizeโ set the max allowed size of websocket messages (in Kbytes, default1024). Message cap in Kbytes. ๐ฆ--websocket-max-sizeโ set the max allowed size of websocket messages (in Kbytes, default1024). Alias, same max size. ๐ฆ--chunked-input-limitโ set the max size of a chunked input part (default1MB, in bytes). Chunked input cap, default1MB. ๐งฑ--chunked-input-timeoutโ set default timeout for chunked input. Chunked input timeout. โฐ--clockโ set a clock source. Clock source, pick one. ๐ฐ๏ธ--clock-listโ list enabled clocks. Show me the clocks. โฑ๏ธ--clocks-listโ bestie, it literally just lists the enabled clocks โจ--add-headerโ automatically sprinkles HTTP headers onto the response, no cap ๐--rem-headerโ automatically yeets the specified HTTP header out of the response--del-headerโ same energy, also automatically removes the specified HTTP header from the response--collect-headerโ stores the specified response header into a request var, syntax isheader var๐--response-header-collectโ stores the specified response header into a request var, syntaxheader var--pull-headerโ stores the specified response header into a request var and removes it from the response, syntaxheader var
๐ธ static file era ๐ธ
--check-staticโ check for static files in the specified directory--check-static-docrootโ check for static files in the requestedDOCUMENT_ROOT--static-checkโ check for static files in the specified directory--static-mapโ maps a mountpoint to a static directory (or a file) ๐บ๏ธ--static-map2โ like--static-mapbut it completely appends the requested resource to the docroot--static-skip-extโ skips the specified extension from staticfile checks--static-indexโ if a directory is requested, it searches for the specified file ๐--static-safeโ skips security checks if the file lives under the specified path--static-cache-pathsโ puts resolved paths in the uWSGI cache for the specified amount of seconds--static-cache-paths-nameโ use the specified cache for static paths--mimefileโ sets the mime types file path (default/etc/mime.types)--mime-fileโ sets the mime types file path (default/etc/mime.types)--static-expires-typeโ sets theExpiresheader based on content type--static-expires-type-mtimeโ sets theExpiresheader based on content type and file mtime--static-expiresโ sets theExpiresheader based on filename regexp--static-expires-mtimeโ sets theExpiresheader based on filename regexp and file mtime--static-expires-uriโ sets theExpiresheader based onREQUEST_URIregexp--static-expires-uri-mtimeโ sets theExpiresheader based onREQUEST_URIregexp and file mtime--static-expires-path-infoโ sets theExpiresheader based onPATH_INFOregexp--static-expires-path-info-mtimeโ sets theExpiresheader based onPATH_INFOregexp and file mtime--static-gzipโ if the supplied regexp matches the static file translation, it goes looking for a gzip version ๐--static-gzip-allโ checks for a gzip version of all requested static files--static-gzip-dirโ checks for a gzip version of all requested static files in the specified dir/prefix--static-gzip-prefixโ checks for a gzip version of all requested static files in the specified dir/prefix--static-gzip-extโ checks for a gzip version of all requested static files with the specified ext/suffix--static-gzip-suffixโ checks for a gzip version of all requested static files with the specified ext/suffix--honour-rangeโ enables support for the HTTPRangeheader ๐--offload-threadsโ sets the number of offload threads to spawn, per-worker, default0--offload-threadโ sets the number of offload threads to spawn, per-worker, default0--file-serve-modeโ sets the static file serving mode--fileserve-modeโ sets the static file serving mode--disable-sendfileโ disablessendfile()and relies on boringread()/write()instead ๐ด--check-cacheโ checks for response data in the specified cache (leave it empty for the default cache)--close-on-execโ sets close-on-exec on connection sockets (could be required for spawning processes in requests)--close-on-exec2โ sets close-on-exec on server sockets (could be required for spawning processes in requests)
๐ env, cgroups & namespaces ๐
--modeโ set uWSGI custom mode--envโ set environment variable--envdirโ loads a daemontools compatible envdir--early-envdirโ loads a daemontools compatible envdir ASAP โก--unenvโ unsets an environment variable--vacuumโ tries to remove all of the generated file/sockets ๐งน--file-writeโ writes the specified content to the specified file (syntax:file=value) before the privileges drop--cgroupโ puts the processes in the specified cgroup--cgroup-optโ sets a value in the specified cgroup option--cgroup-dir-modeโ sets permission for the cgroup directory (default is700)--namespaceโ run in a new namespace under the specified rootfs--namespace-keep-mountโ keeps the specified mountpoint in your namespace--nsโ run in a new namespace under the specified rootfs--namespace-netโ adds a network namespace--ns-netโ adds a network namespace
๐ sockets & networking ๐
--enable-proxy-protocolโ enables PROXY1 protocol support (only for http parsers)--reuse-portโ enables theREUSE_PORTflag on the socket (BSD only)--tcp-fast-openโ enables theTCP_FASTOPENflag on TCP sockets with the specified qlen value--tcp-fastopenโ enables theTCP_FASTOPENflag on TCP sockets with the specified qlen value--tcp-fast-open-clientโ usessendto(..., MSG_FASTOPEN, ...)instead ofconnect()if supported--tcp-fastopen-clientโ usessendto(..., MSG_FASTOPEN, ...)instead ofconnect()if supported--zergโ attach to a zerg server ๐พ--zerg-fallbackโ falls back to normal sockets if the zerg server isn't available--zerg-serverโ enables the zerg server on the specified UNIX socket
๐ cron corner ๐
--cronโ add a cron task--cron2โ add a cron task (key=valsyntax)--unique-cronโ add a unique cron task--cron-harakiriโ sets the maximum time (in seconds) we wait for a cron command to complete โณ--legion-cronโ add a cron task runnable only when the instance is a lord of the specified legion--cron-legionโ add a cron task runnable only when the instance is a lord of the specified legion--unique-legion-cronโ add a unique cron task runnable only when the instance is a lord of the specified legion--unique-cron-legionโ add a unique cron task runnable only when the instance is a lord of the specified legion
๐ฆ loops & workers ๐ฆ
--loopโ select the uWSGI loop engine--loop-listโ list enabled loop engines--loops-listโ list enabled loop engines--worker-execโ run the specified command as worker--worker-exec2โ run the specified command as worker (after thepost_forkhook)
๐ daemon attachment ๐
--attach-daemonโ attaches a command/daemon to the master process (the command has to not go in background)--attach-control-daemonโ attaches a command/daemon to the master process (the command has to not go in background); when the daemon dies, the master dies too ๐--smart-attach-daemonโ attaches a command/daemon to the master process managed by a pidfile (the command has to daemonize)--smart-attach-daemon2โ attaches a command/daemon to the master process managed by a pidfile (the command has to NOT daemonize)--legion-attach-daemonโ same as--attach-daemonbut the daemon runs only on the legion lord node ๐--legion-smart-attach-daemonโ same as--smart-attach-daemonbut the daemon runs only on the legion lord node--legion-smart-attach-daemon2โ same as--smart-attach-daemon2but the daemon runs only on the legion lord node--daemons-honour-stdinโ does not change the stdin of external daemons to/dev/null--attach-daemon2โ attach-daemon keyval variant (supports smart modes too)
โจ plugins, no notes โจ
--pluginsโ load uWSGI plugins--pluginโ load uWSGI plugins--need-pluginsโ load uWSGI plugins (and exit on error) ๐ญ--need-pluginโ load uWSGI plugins (and exit on error) ๐ญ--plugins-dirโ adds a directory to the uWSGI plugin search path--plugin-dirโ adds a directory to the uWSGI plugin search path--plugins-listโ list enabled plugins--plugin-listโ list enabled plugins--autoloadโ tries to automatically load plugins when unknown options are found ๐ฎ--dlopenโ blindly load a shared library (yes, blindly, she said what she said)--allowed-modifiersโ comma separated list of allowed modifiers--remap-modifierโ remaps a request modifier from one id to another
๐ง debugging & building ๐ง
--dump-optionsโ dumps the full list of available options--show-configโ shows the current config reformatted as ini--binary-append-dataโ returns the content of a resource to stdout for appending to a uwsgi binary (fordata://usage)--printโ simple print--iprintโ simple print (immediate version) โก--exitโ forceexit()of the instance ๐ช--cflagsโ reports uWSGICFLAGS(useful for building external plugins)--dot-hโ dumps theuwsgi.hused for building the core (useful for building external plugins)--config-pyโ dumps theuwsgiconfig.pyused for building the core (useful for building external plugins)--build-pluginโ builds a uWSGI plugin for the current binary ๐จ--versionโ print uWSGI version--response-headers-limitโ sets the response header maximum size (default:64k)
ok that's the whole options buffet, bestie โ every flag, every default, every "syntax: header var", all of it, untouched ๐ซถ
and that's the page!! ๐ this whole thing came from uwsgi_ldap version 2.0.31-debian, dated July 2026, and it's filed under UWSGI_LDAP(1) โ literally the manual page, periodt. go configure something iconic ๐
๐ฆ where this page comes from
- ubuntu stonking: uwsgi-plugin-ldap 2.0.31-6build1 ยท GPL-2.0-only
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms