UWSGI_GEOIP(1)
โจ UWSGI_GEOIP(1) โจ
User Commands ๐ซถ
๐ธ NAME ๐ธ
bestie, meet uwsgi_geoip โ fast (pure C), self-healing, developer-friendly WSGI server ๐
๐ SYNOPSIS ๐
okay so the whole run is literally just this, no cap:
uwsgi-core [options...]
๐ DESCRIPTION ๐
okay so this is the big one, bestie. Every option, flag, alias, and little technical nugget is right here โ no skipping, no summarising, periodt. ๐โจ
-s,--socketโ bind to the specified UNIX/TCP socket using default protocol ๐-s,--uwsgi-socketโ bind to the specified UNIX/TCP socket using uwsgi protocol ๐--suwsgi-socketโ bind to the specified UNIX/TCP socket using uwsgi protocol over SSL ๐ฅ--ssl-socketโ bind to the specified UNIX/TCP socket using uwsgi protocol over SSL ๐ญ--http-socketโ bind to the specified UNIX/TCP socket using HTTP protocol ๐--http-socket-modifier1โ force the specified modifier1 when using HTTP protocol โจ--http-socket-modifier2โ force the specified modifier2 when using HTTP protocol ๐ซ--http11-socketโ bind to the specified UNIX/TCP socket using HTTP 1.1 (Keep-Alive) protocol ๐ฆ--https-socketโ bind to the specified UNIX/TCP socket using HTTPS protocol ๐--https-socket-modifier1โ force the specified modifier1 when using HTTPS protocol ๐--https-socket-modifier2โ force the specified modifier2 when using HTTPS protocol ๐--fastcgi-socketโ bind to the specified UNIX/TCP socket using FastCGI protocol โก--fastcgi-nph-socketโ bind to the specified UNIX/TCP socket using FastCGI protocol (nph mode) ๐ฅ--fastcgi-modifier1โ force the specified modifier1 when using FastCGI protocol ๐--fastcgi-modifier2โ force the specified modifier2 when using FastCGI protocol ๐ธ--scgi-socketโ bind to the specified UNIX/TCP socket using SCGI protocol ๐ง--scgi-nph-socketโ bind to the specified UNIX/TCP socket using SCGI protocol (nph mode) ๐--scgi-modifier1โ force the specified modifier1 when using SCGI protocol โญ--scgi-modifier2โ force the specified modifier2 when using SCGI protocol ๐--raw-socketโ bind to the specified UNIX/TCP socket using RAW protocol ๐ช--raw-modifier1โ force the specified modifier1 when using RAW protocol ๐ง--raw-modifier2โ force the specified modifier2 when using RAW protocol ๐--puwsgi-socketโ bind to the specified UNIX/TCP socket using persistent uwsgi protocol (puwsgi) ๐ชฉ--protocolโ force the specified protocol for default sockets ๐ ๏ธ--socket-protocolโ force the specified protocol for default sockets ๐ง--shared-socketโ create a shared socket for advanced jailing or ipc ๐--undeferred-shared-socketโ create a shared socket for advanced jailing or ipc (undeferred mode) ๐งท-p,--processesโ spawn the specified number of workers/processes ๐ฏ-p,--workersโ spawn the specified number of workers/processes ๐--thunder-lockโ serialize accept() usage (if possible) โก-t,--harakiriโ set harakiri timeout ๐ก๏ธ--harakiri-verboseโ enable verbose mode for harakiri ๐ข--harakiri-graceful-timeoutโ interval between graceful harakiri attempt and a sigkill โณ--harakiri-graceful-signalโ use this signal instead of sigterm for graceful harakiri attempts ๐ฆ--harakiri-queue-thresholdโ only trigger harakiri if queue is greater than this threshold ๐--harakiri-no-arhโ do not enable harakiri during after-request-hook ๐ซ--no-harakiri-arhโ do not enable harakiri during after-request-hook ๐--no-harakiri-after-req-hookโ do not enable harakiri during after-request-hook ๐--backtrace-depthโ set backtrace depth ๐--mule-harakiriโ set harakiri timeout for mule tasks ๐ด-x,--xmlconfigโ load config from xml file ๐-x,--xmlโ load config from xml file ๐--configโ load configuration using the pluggable system ๐งฉ--fallback-configโ re-exec uwsgi with the specified config when exit code is 1 ๐--strictโ enable strict mode (placeholder cannot be used) โ ๏ธ--skip-zeroโ skip check of file descriptor 0 0๏ธโฃ--skip-atexitโ skip atexit hooks (ignored by the master) ๐ช--skip-atexit-teardownโ skip atexit teardown (ignored by the master) ๐งน-S,--setโ set a placeholder or an option ๐ฏ--set-placeholderโ set a placeholder ๐--set-phโ set a placeholder ๐--getโ print the specified option value and exit ๐จ๏ธ--declare-optionโ declare a new uWSGI custom option ๐--declare-option2โ declare a new uWSGI custom option (non-immediate) ๐โจ--resolveโ place 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โ set options blacklist context โ--end-blacklistโ clear options blacklist context ๐งผ--whitelistโ set options whitelist context โ--end-whitelistโ clear options whitelist context ๐งฝ--ignore-sigpipeโ do not report (annoying) SIGPIPE ๐ซ๐ข--ignore-write-errorsโ do not report (annoying) write()/writev() errors ๐ซโ๏ธ--write-errors-toleranceโ set the maximum number of allowed write errors (default: no tolerance) ๐--write-errors-exception-onlyโ only raise an exception on write errors giving control to the app itself ๐ฎ--disable-write-exceptionโ disable exception generation on write()/writev() ๐ซ๐ฅ--inheritโ use the specified file as config template ๐งฌ--includeโ include the specified file as immediate configuration ๐ฅ--inject-beforeโ inject a text file before the config file (advanced templating) ๐โฌ ๏ธ--inject-afterโ inject a text file after the config file (advanced templating) ๐โก๏ธ-d,--daemonizeโ daemonize uWSGI ๐ป--daemonize2โ daemonize uWSGI after app loading ๐ปโจ--stopโ stop an instance ๐--reloadโ reload an instance ๐--pauseโ pause an instance โธ๏ธ--suspendโ suspend an instance ๐ค--resumeโ resume an instance โถ๏ธ--connect-and-readโ connect to a socket and wait for data from it ๐๐--extractโ fetch/dump any supported address to stdout ๐ค-l,--listenโ set the socket listen queue size ๐ง-v,--max-varsโ set the amount of internal iovec/vars structures ๐ฆ--max-appsโ set the maximum number of per-worker applications ๐ฑ-b,--buffer-sizeโ set internal buffer size ๐งบ-m,--memory-reportโ enable memory report ๐ง--profilerโ enable the specified profiler ๐-c,--cgi-modeโ force CGI-mode for plugins supporting it ๐๏ธ-a,--abstract-socketโ force UNIX socket in abstract mode (Linux only) ๐ง-C,--chmod-socketโ chmod-socket ๐-C,--chmodโ chmod-socket ๐--chown-socketโ chown unix sockets ๐ค--umaskโ set umask ๐ญ--freebindโ put socket in freebind mode ๐๏ธ--map-socketโ map sockets to specific workers ๐บ๏ธ-T,--enable-threadsโ enable threads (stub option this is true by default) ๐งต--no-threads-waitโ do not wait for threads cancellation on quit/reload ๐ซโณ--auto-procnameโ automatically set processes name to something meaningful ๐ท๏ธ--procname-prefixโ add a prefix to the process names ๐ค--procname-prefix-spacedโ add a spaced prefix to the process names ๐คโจ--procname-appendโ append a string to process names โ--procnameโ set process names ๐--procname-masterโ set master process name ๐-i,--single-interpreterโ do not use multiple interpreters (where available) 1๏ธโฃ--need-appโ exit if no app can be loaded ๐ช-M,--masterโ enable master process ๐ง--honour-stdinโ do not remap stdin to /dev/null ๐ซก--emperorโ run the Emperor ๐--emperor-proxy-socketโ force the vassal to became an Emperor proxy ๐ฐ๏ธ--emperor-wrapperโ set a binary wrapper for vassals ๐--emperor-wrapper-overrideโ set a binary wrapper for vassals to try before the default one ๐ฅ--emperor-wrapper-fallbackโ set a binary wrapper for vassals to try as a last resort ๐--emperor-nofollowโ do not follow symlinks when checking for mtime ๐ซ๐--emperor-procnameโ set the Emperor process name ๐๐--emperor-freqโ set the Emperor scan frequency (default 3 seconds) โฑ๏ธ--emperor-required-heartbeatโ set the Emperor tolerance about heartbeats ๐--emperor-curse-toleranceโ set the Emperor tolerance about cursed vassals ๐--emperor-pidfileโ write the Emperor pid in the specified file. ๐๐--emperor-tyrantโ put the Emperor in Tyrant mode. ๐ ๐--emperor-tyrant-nofollowโ do not follow symlinks when checking for uid/gid in Tyrant mode. ๐ซ๐--emperor-statsโ run the Emperor stats server. ๐๐--emperor-stats-serverโ run the Emperor stats server. ๐๐--early-emperorโ spawn the emperor as soon as possible. โฐ๐--emperor-broodlordโ run the emperor in BroodLord mode. ๐ฆ๐--emperor-throttleโ set throttling level (in milliseconds) for bad behaving vassals (default 1000). ๐คโฑ๏ธ--emperor-max-throttleโ set max throttling level (in milliseconds) for bad behaving vassals (default 3 minutes). ๐คโฑ๏ธ--emperor-magic-execโ prefix vassals config files withexec://if they have the executable bit. โจ๐--emperor-on-demand-extensionโ search for text file (vassal name + extension) containing the on demand socket name. ๐๐--emperor-on-demand-extโ search for text file (vassal name + extension) containing the on demand socket name. ๐๐--emperor-on-demand-directoryโ enable on demand mode binding to the unix socket in the specified directory named like the vassal +.socket. ๐๐--emperor-on-demand-dirโ enable on demand mode binding to the unix socket in the specified directory named like the vassal +.socket. ๐๐--emperor-on-demand-execโ use the output of the specified command as on demand socket name (the vassal name is passed as the only argument). ๐โโ๏ธ๐--emperor-extra-extensionโ allows the specified extension in the Emperor (vassal will be called with--config). ๐๐--emperor-extra-extโ allows the specified extension in the Emperor (vassal will be called with--config). ๐๐--emperor-no-blacklistโ disable Emperor blacklisting subsystem. ๐ซ๐--emperor-use-cloneโ useclone()instead offork()passing the specifiedunshare()flags. ๐ฏโโ๏ธ๐ง--emperor-graceful-shutdownโ use vassals graceful shutdown during ragnarok. ๐๐--emperor-capโ set vassals capability. ๐งข--vassals-capโ set vassals capability. ๐งข--vassal-capโ set vassals capability. ๐งข--imperial-monitor-listโ list enabled imperial monitors. ๐๐--imperial-monitors-listโ list enabled imperial monitors. ๐๐--vassals-inheritโ add config templates to vassals config (uses--inherit). ๐งฌ๐--vassals-includeโ include config templates to vassals config (uses--includeinstead of--inherit). ๐ฅ๐--vassals-inherit-beforeโ add config templates to vassals config (uses--inherit, parses before the vassal file). ๐งฌโฎ๏ธ--vassals-include-beforeโ include config templates to vassals config (uses--includeinstead of--inherit, parses before the vassal file). ๐ฅโฎ๏ธ--vassals-start-hookโ run the specified command before each vassal starts. ๐๐ช--vassals-stop-hookโ run the specified command after vassal's death. โฐ๏ธ๐ช--vassal-sosโ ask emperor for reinforcement when overloaded. ๐๐--vassal-sos-backlogโ ask emperor for sos if backlog queue has more items than the value specified. ๐๐ฆ--vassals-setโ automatically set the specified option (via--set) for every vassal. โ๏ธ๐ฏ--vassal-setโ automatically set the specified option (via--set) for every vassal. โ๏ธ๐ฏ--heartbeatโ announce healthiness to the emperor. ๐๐--reload-mercyโ set the maximum time (in seconds) we wait for workers and other processes to die during reload/shutdown. โณ๐ข--worker-reload-mercyโ set the maximum time (in seconds) a worker can take to reload/shutdown (default is 60). โณ๐ท--mule-reload-mercyโ set the maximum time (in seconds) a mule can take to reload/shutdown (default is 60). โณ๐ซ--exit-on-reloadโ force exit even if a reload is requested. ๐ช๐ฅ--die-on-termโ exit instead of brutal reload onSIGTERM. โฐ๏ธ๐ก--force-gatewayโ force the spawn of the first registered gateway without a master. ๐ช๐-h|--helpโ show this help. ๐๐-h|--usageโ show this help. ๐๐--print-symโ print content of the specified binary symbol. ๐ฃ๐--print-symbolโ print content of the specified binary symbol. ๐ฃ๐-r|--reaperโ callwaitpid(-1,...)after each request to get rid of zombies. ๐งโโ๏ธโฐ๏ธ-R|--max-requestsโ reload workers after the specified amount of managed requests. ๐๐--max-requests-deltaโ add(worker_id * delta)to themax_requestsvalue of each worker. โ๐--min-worker-lifetimeโ number of seconds worker must run before being reloaded (default is 10). โฑ๏ธ๐ท--max-worker-lifetimeโ reload workers after the specified amount of seconds (default is disabled). โฑ๏ธ๐--max-worker-lifetime-deltaโ add(worker_id * delta)seconds to themax_worker_lifetimevalue of each worker. โโฑ๏ธ-z|--socket-timeoutโ set internal sockets timeout. โฑ๏ธ๐--no-fd-passingโ disable file descriptor passing. ๐ซ๐--locksโ create the specified number of shared locks. ๐๐ข--lock-engineโ set the lock engine. ๐โ๏ธ--ftokโ set the ipcsem key viaftok()for avoiding duplicates. ๐๐ก--persistent-ipcsemโ do not remove ipcsem's on shutdown. ๐ซ๐งน-A|--sharedareaโ create a raw shared memory area of 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. ๐ซ๐--cacheโ create a shared cache containing given elements. ๐๐ฆ--cache-blocksizeโ set cache blocksize. ๐๐--cache-storeโ enable persistent cache to disk. ๐๐พ--cache-store-syncโ set frequency of sync for persistent cache. ๐๐--cache-no-expireโ disable auto sweep of expired items. ๐๐ซ๐งน--cache-expire-freqโ set the frequency of cache sweeper scans (default 3 seconds). ๐๐งนโฑ๏ธ--cache-report-freed-itemsโ constantly report the cache item freed by the sweeper (use only for debug). ๐๐--cache-udp-serverโ bind the cache udp server (used only for set/update/delete) to the specified socket. ๐๐ก--cache-udp-nodeโ send cache update/deletion to the specified cache udp server. ๐๐ค--cache-syncโ copy the whole content of another uWSGI cache server on server startup. ๐๐--cache-use-last-modifiedโ updatelast_modified_attimestamp on every cache item modification (default is disabled). ๐โฑ๏ธ--add-cache-itemโ add an item in the cache. ๐โ--load-file-in-cacheโ load a static file in the cache. ๐๐--load-file-in-cache-gzipโ load a static file in the cache with gzip compression. ๐๐๏ธ--cache2โ create a new generation shared cache (keyval syntax). ๐โจ--queueโ enable shared queue. ๐ฌ--queue-blocksizeโ set queue blocksize. ๐ฌ๐--queue-storeโ enable persistent queue to disk. ๐ฌ๐พ--queue-store-syncโ set frequency of sync for persistent queue. ๐ฌ๐-Q|--spoolerโ run a spooler on the specified directory. ๐ธ๐--spooler-externalโ map spoolers requests to a spooler directory managed by an external instance. ๐ธ๐--spooler-orderedโ try to order the execution of spooler tasks. ๐ธ๐ข--spooler-chdirโchdir()to specified directory before each spooler task. ๐ธ๐--spooler-processesโ set the number of processes for spoolers. ๐ธ๐ฏ--spooler-quietโ do not be verbose with spooler tasks. ๐ธ๐คซ--spooler-max-tasksโ set the maximum number of tasks to run before recycling a spooler. ๐ธ๐--spooler-harakiriโ set harakiri timeout for spooler tasks. ๐ธโฑ๏ธ--spooler-frequencyโ set spooler frequency. ๐ธโฑ๏ธ--spooler-freqโ set spooler frequency. ๐ธโฑ๏ธ--muleโ add a mule. ๐ซ--mulesโ add the specified number of mules. ๐ซ๐ซ--farmโ add a mule farm. ๐ซ๐--mule-msg-sizeโ set mule message buffer size. ๐ซ๐ฌ--signalโ send a uwsgi signal to a server. ๐ฅ๐ก--signal-bufsizeโ set buffer size for signal queue. ๐ฅ๐ฆ--signals-bufsizeโ set buffer size for signal queue. ๐ฅ๐ฆ--signal-timerโ add a timer (syntax:<signal> <seconds>). ๐ฅโฑ๏ธ--timerโ add a timer (syntax:<signal> <seconds>). โฑ๏ธ--signal-rbtimerโ add a redblack timer (syntax:<signal> <seconds>). ๐ฅ๐ณโฑ๏ธ--rbtimerโ add a redblack timer (syntax:<signal> <seconds>). ๐ณโฑ๏ธ--rpc-maxโ maximum number of rpc slots (default: 64). ๐๐ข-L|--disable-loggingโ disable request logging. ๐ซ๐--flockโ lock the specified file before starting, exit if locked. ๐๐--flock-waitโ lock the specified file before starting, wait if locked. ๐โณ--flock2โ lock the specified file after logging/daemon setup, exit if locked. ๐๐--flock-wait2โ lock the specified file after logging/daemon setup, wait if locked. ๐โณ--pidfileโ create pidfile (before privileges drop). ๐๐--pidfile2โ create pidfile (after privileges drop). ๐๐--safe-pidfileโ create safe pidfile (before privileges drop). ๐๐ก๏ธ--safe-pidfile2โ create safe pidfile (after privileges drop). ๐๐ก๏ธ--chrootโchroot()to the specified directory. ๐ ๐--pivot-rootโpivot_root()to the specified directories (new_rootandput_oldmust be separated with a space). ๐๐--pivot_rootโpivot_root()to the specified directories (new_rootandput_oldmust be separated with a space). ๐๐--uidโsetuidto the specified user/uid. ๐ค๐--gidโsetgidto the specified group/gid. ๐ฅ๐--add-gidโ add 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โ disable additional groups set viainitgroups(). ๐ซ๐ฅ--capโ set process capability. ๐งข--unshareโunshare()part of the processes and put it in a new namespace. ๐ช๐ฆ--unshare2โunshare()part of the processes and put it in a new namespace after rootfs change. ๐ช๐ณ--setns-socketโ expose a unix socket returning namespace fds from/proc/self/ns. ๐๐--setns-socket-skipโ skip the specified entry when sending setns file descriptors. โญ๏ธ๐--setns-skipโ skip the specified entry when sending setns file descriptors. โญ๏ธ๐--setnsโ join a namespace created by an external uWSGI instance. ๐ช๐--setns-preopenโ open/proc/self/nsas soon as possible and cache fds. โก๐--jailedโ marks the instance as jailed (fr fr, it forces the execution ofpost_jailhooks) ๐--reforkโfork()again after privileges drop. Lowkey useful for jailing systems ๐ฆ--re-forkโ same energy:fork()again after privileges drop. Useful for jailing systems โจ--refork-as-rootโfork()again before privileges drop. Useful for jailing systems ๐--re-fork-as-rootโ yep, another spelling:fork()again before privileges drop. Useful for jailing systems ๐--refork-post-jailโfork()again after jailing. Useful for jailing systems ๐ฅ--re-fork-post-jailโ same but with the extra hyphen:fork()again after jailing. Useful for jailing systems ๐--hook-asapโ run the specified hook as soon as possible โก--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) ๐--hook-accepting1-onceโ run the specified hook after the first worker enters the accepting phase (once per instance) ๐--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โ same vibe: run the specified function/symbol after each request ๐--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โ setSO_SNDTIMEOโณ--socket-send-timeoutโ setSO_SNDTIMEOโณ--so-write-timeoutโ setSO_SNDTIMEOโณ--socket-write-timeoutโ setSO_SNDTIMEOโณ--socket-sndbufโ setSO_SNDBUF๐ฆ--socket-rcvbufโ setSO_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โ the moment that one file gets modified or touched, we fire off a signal. Syntax goes like:file signal๐--fs-reloadโ if the filesystem object you picked gets modified, we do a graceful reload. soft launch energy โจ--fs-brutal-reloadโ same trigger, but the reload is brutal. no gentle vibes, just ๐ช--fs-signalโ when that filesystem object gets modified, raise a uwsgi signal. Syntax:file signal๐ธ--check-mountpointโ if a filesystem stops being reachable, this destroys the instance. genuinely useful when you want reliable Fuse management ๐ซถ--mountpoint-checkโ bestie this is literally the same thing: instance gets destroyed when a filesystem is no more reachable, handy for reliable Fuse management ๐--check-mountโ yep, another twin. filesystem unreachable โ instance destroyed. reliable Fuse management stays winning โจ--mount-checkโ the fourth and final sibling ๐ same deal: destroy the instance if a filesystem is no more reachable (useful for reliable Fuse management)--propagate-touchโ described as an over-engineering option for systems with flaky signal management. not me adding features for unreliable boxes ๐--limit-postโ puts a limit on the request body ๐--no-orphansโ if the master dies, workers get automatically killed. but heads up, the manpage says this can be dangerous for availability ๐ญ--prioโ set the priority of processes/threads ๐--cpu-affinityโ set cpu affinity ๐ง--post-bufferingโ set the size in bytes where we stop keeping things in memory and buffer to disk instead ๐--post-buffering-bufsizeโ sets the buffer size forread()while in post buffering mode โญ--body-read-warningโ the amount of allowed memory allocation, in megabytes, for a request body before it starts printing a warning. the little "hey bestieโฆ" of memory limits ๐ญ--upload-progressโ turns on creation of.jsonfiles in the directory you specify while a file upload is happening ๐--no-default-appโ don't fallback to the default app, periodt ๐--manage-script-nameโ automatically rewritesSCRIPT_NAMEandPATH_INFOโจ--ignore-script-nameโ ignoresSCRIPT_NAMEentirely ๐--catch-exceptionsโ reports the exception as http output. discouraged, the manpage says use it only for testing ๐--reload-on-exceptionโ an exception pops off โ the worker reloads ๐ฅ--reload-on-exception-typeโ reload a worker when a specific exception type gets raised--reload-on-exception-valueโ reload a worker when a specific exception value gets raised--reload-on-exception-reprโ reload a worker when a specific exception type+value (language-specific) gets raised ๐ฆ--exception-handlerโ add an exception handler ๐ซถ--enable-metricsโ turns on the metrics subsystem ๐--metricโ add a custom metric โจ--metric-thresholdโ add a metric threshold/alarm ๐จ--metric-alarmโ same thing, different name: add a metric threshold/alarm ๐จ--alarm-metricโ and again, third alias: add a metric threshold/alarm ๐จ
--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โ alias moment: export metrics as text files to the specified directory ๐--metric-dir-restoreโ alias moment again: restore last value taken from the metrics dir โป๏ธ--metrics-no-coresโ disables generation of cores-related metrics โ๏ธ--udpโ run the udp server on the address you give it ๐ก--statsโ enable the stats server on the specified address ๐--stats-serverโ yes bestie, same: enable the stats server on the specified address ๐--stats-httpโ prefixes the stats server json output with http headers ๐ง--stats-minifiedโ minifies the statistics json output โจ--stats-minโ the short king version: minify statistics json output โจ--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โ the plural twin: set the default frequency of stats pushers โฐ--stats-no-coresโ disables generation of cores-related stats โ๏ธ--stats-no-metricsโ do not include metrics in the stats output ๐ซ--multicastโ subscribes to the multicast group you specify ๐ป--multicast-ttlโ set the multicast ttl โณ--multicast-loopโ set 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 for subscriptions ๐
--legionโ you become a member of a legion โ๏ธ--legion-mcastโ become a member of a legion, and this one is a shortcut for multicast โจ--legion-nodeโ add a node to a legion ๐ฅ--legion-freqโ set the frequency of legion packets ๐ถ--legion-toleranceโ set the tolerance of the legion subsystem ๐ซถ--legion-death-on-lord-errorโ if one of the lord hooks fails, it declares itself a dead node for however many seconds you specified ๐--legion-skew-toleranceโ set the clock skew tolerance of the legion subsystem, default is60seconds โฐ--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, which is the shutdown of the instance ๐--legion-joinโ the action to call on legion join, meaning 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โ set the quorum of a legion ๐ณ๏ธ--legion-scrollโ set the scroll of a legion ๐--legion-scroll-max-sizeโ set the max size of the legion scroll buffer ๐--legion-scroll-list-max-sizeโ set the max size of the legion scroll list buffer ๐--subscriptions-sign-checkโ set the digest algorithm and the certificate directory for the secured subscription system ๐--subscriptions-sign-check-toleranceโ set the maximum tolerance, in seconds, of clock skew for the secured subscription system โฐ--subscriptions-sign-skip-uidโ skip the signature check for the uid you specify when using unix sockets credentials ๐--subscriptions-credentials-checkโ add a directory to search for subscriptions key credentials ๐--subscriptions-use-credentialsโ enable management ofSCM_CREDENTIALSin subscriptions UNIX sockets ๐ชช--subscription-algoโ set the load balancing algorithm for the subscription system โ๏ธ--subscription-dotsplitโ try to fallback to the next part (dot based) in the subscription key ๐ฏ--subscribe-toโ subscribe to the subscription server you specify ๐ฌ--stโ the lil abbreviation: subscribe to the specified subscription server ๐ฌ--subscribeโ yeah, same vibe: subscribe to the specified subscription server ๐ฌ--subscribe2โ subscribes to the subscription server you specify, but using advanced keyval syntax โจ--subscribe-freqโ sends the subscription announce at the interval you specify โฐ--subscription-toleranceโ set tolerance for subscription servers ๐ซถ--unsubscribe-on-graceful-reloadโ forces the unsubscribe request even during a graceful reload โ๏ธ--start-unsubscribedโ configures subscriptions but does not send them, which is useful with master fifo ๐ค--subscribe-with-modifier1โ forces the specifiedmodifier1when subscribing ๐ฏ
--snmpโ enables the embedded snmp server ๐--snmp-communityโ set the snmp community string ๐--ssl-verboseโ be verbose about SSL errors ๐ฃ--ssl-verify-depthโ set the maximum certificate verification depth ๐--sniโ add an SNI-governed SSL context ๐--sni-dirโ checks forcert/key/client_cafiles in the directory you specify and creates a sni/ssl context on demand ๐ช--sni-dir-ciphersโ set the ssl ciphers for thesni-diroption ๐--ssl-enable3โ enables SSLv3, and bestie it is flagged (insecure) ๐ญ--ssl-enable-sslv3โ also enables SSLv3, also (insecure) ๐ญ--ssl-enable-tlsv1โ enables TLSv1, and yes, also flagged (insecure) ๐ญ--ssl-optionโ set a raw ssl option, value must be numeric ๐ข--sni-regexpโ add an SNI-governed SSL context, except the key is a regexp ๐ง--ssl-tmp-dirโ store ssl-related temp files in the directory you specify ๐๏ธ--check-intervalโ set the interval, in seconds, of master checks โฑ๏ธ--forkbomb-delayโ when a forkbomb is detected, sleep for the number of seconds you specify ๐ด--binary-pathโ force the binary path ๐--privileged-binary-patchโ patch the uwsgi binary with a new command, and this happens before privileges drop ๐ฉน--unprivileged-binary-patchโ patch the uwsgi binary with a new command, this time after privileges drop ๐ฉน--privileged-binary-patch-argโ patch the uwsgi binary with a new command and arguments, before privileges drop ๐ฉน--unprivileged-binary-patch-argโ patch the uwsgi binary with a new command and arguments, after privileges drop ๐ฉน--asyncโ enable async mode with the number of cores you specify ๐งต--max-fdโ set the maximum number of file descriptors, and heads up, this requires root privileges ๐
--logtoโ set the logfile or udp address ๐--logto2โ log to the file or udp address you specify, but after privileges drop ๐--log-formatโ set an advanced format for request logging โจ--logformatโ the shorter name, same energy: set advanced format for request logging โจ--logformat-strftimeโ appliesstrftimeto the logformat output ๐ฐ๏ธ--log-format-strftimeโ the dashed twin: applystrftimeto logformat output ๐ฐ๏ธ--logfile-chownโchownthe logfiles ๐งโโ๏ธ--logfile-chmodโchmodthe logfiles ๐--log-syslogโ log to syslog ๐ฎ--log-socketโ send logs to the socket you specify ๐--req-loggerโ set or append a request logger ๐ชต--logger-reqโ flipped name, same job: set/append a request logger ๐ชต--loggerโ set or append a logger ๐ชต--logger-listโ list the enabled loggers ๐--loggers-listโ plural version, same thing: list enabled loggers ๐--threaded-loggerโ offloads log writing to a thread ๐งต--log-encoderโ add an item in the log encoder chain ๐--log-req-encoderโ add an item in the log req encoder chain ๐--log-drainโ drains, meaning it does not show, log lines matching the regexp you specify ๐ฐ--log-filterโ shows only the 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, which the manpage says could be useful for generating a core dump ๐ฅ--alarmโ create a new alarm. Syntax:<alarm> <plugin:args>๐จ--alarm-cheapโ bestie, use the main alarm thread instead of spinning up dedicated threads for curl-based alarms โจ--alarm-freqโ tune the anti-loop alarm system (the default is3seconds, periodt)--alarm-fdโ raise the specified alarm when an fd is read for read. by default it reads1byte, so set8for eventfd ๐--alarm-segfaultโ raise the specified alarm when the segmentation fault handler is executed ๐ญ--segfault-alarmโ raise the specified alarm when the segmentation fault handler is executed (same energy, different name, slay)--alarm-backlogโ raise the specified alarm when the socket backlog queue is full ๐--backlog-alarmโ raise the specified alarm when the socket backlog queue is full (the twin fr fr)--lq-alarmโ raise the specified alarm when the socket backlog queue is full ๐ธ--alarm-lqโ raise the specified alarm when the socket backlog queue is full (another alias, obsessed)--alarm-listen-queueโ raise the specified alarm when the socket backlog queue is full ๐--listen-queue-alarmโ raise the specified alarm when the socket backlog queue is full (yes, that's six names for the same vibe, iykyk)--log-alarmโ raise the specified alarm when a log line matches the specified regexp. syntax:<alarm>[,alarm...] <regexp>๐ฅ--alarm-logโ raise the specified alarm when a log line matches the specified regexp. syntax:<alarm>[,alarm...] <regexp>--not-log-alarmโ skip the specified alarm when a log line matches the specified regexp. syntax:<alarm>[,alarm...] <regexp>๐--not-alarm-logโ skip the specified alarm when a log line matches the specified regexp. syntax:<alarm>[,alarm...] <regexp>--alarm-listโ list enabled alarms ๐--alarms-listโ list enabled alarms--alarm-msg-sizeโ set the max size of an alarm message (default8192)--log-masterโ delegate logging to the master process ๐--log-master-bufsizeโ set the buffer size for the master logger. heads up: bigger log messages will be truncated โ๏ธ--log-master-streamโ create the master logpipe asSOCK_STREAM--log-master-req-streamโ create the master requests logpipe asSOCK_STREAM--log-reopenโ reopen log after reload ๐ฆ--log-truncateโ truncate log on startup--log-maxsizeโ set maximum logfile size--log-backupnameโ set logfile name after rotation--logdateโ prefix logs with date or a strftime string ๐--log-dateโ prefix logs with date or a strftime string--log-prefixโ prefix logs with a string--log-zeroโ log responses without body ๐--log-slowโ log requests slower than the specified number of milliseconds ๐--log-4xxโ log requests with a 4xx response--log-5xxโ log requests with a 5xx response--log-bigโ log requests bigger than the specified size ๐--log-sendfileโ log sendfile requests--log-ioerrorโ log requests with io errors--log-microsโ report response time in microseconds instead of milliseconds โฑ๏ธ--log-x-forwarded-forโ use the ip fromX-Forwarded-Forheader instead ofREMOTE_ADDR--master-as-rootโ leave master process running as root โ ๏ธ--drop-after-initโ run privileges drop after plugin initialization, superseded bydrop-after-apps--drop-after-appsโ run privileges drop after apps loading, superseded bymaster-as-root--force-cwdโ force the initial working directory to the specified value ๐--binshโ override/bin/sh(used by exec hooks, it always fallback to/bin/sh)--chdirโ chdir to specified directory before apps loading--chdir2โ chdir to specified directory after apps loading--lazyโ set lazy mode (load apps in workers instead of master) ๐ด--lazy-appsโ load apps in each worker instead of the master--cheapโ set cheap mode (spawn workers only after the first request) ๐ธ--cheaperโ set cheaper mode (adaptive process spawning)--cheaper-initialโ set the initial number of processes to spawn in cheaper mode--cheaper-algoโ choose to algorithm used for adaptive process spawning--cheaper-stepโ number of additional processes to spawn at each overload--cheaper-overloadโ increase workers after specified overload--cheaper-algo-listโ list enabled cheapers algorithms ๐--cheaper-algos-listโ list enabled cheapers algorithms--cheaper-listโ list enabled cheapers algorithms--cheaper-rss-limit-softโ don't spawn new workers if total resident memory usage of all workers is higher than this limit ๐ง--cheaper-rss-limit-hardโ if total workers resident memory usage is higher try to stop workers--idleโ set idle mode (put uWSGI in cheap mode after inactivity)--die-on-idleโ shutdown uWSGI when idle ๐--mountโ load application under mountpoint โฐ๏ธ--worker-mountโ load application under mountpoint in the specified worker or after workers spawn--threadsโ run each worker in prethreaded mode with the specified number of threads ๐งต--thread-stacksizeโ set threads stacksize--threads-stacksizeโ set threads stacksize--thread-stack-sizeโ set threads stacksize--threads-stack-sizeโ set threads stacksize--vhostโ enable virtualhosting mode (based onSERVER_NAMEvariable) ๐--vhost-hostโ enable virtualhosting mode (based onHTTP_HOSTvariable)--routeโ add a route ๐ฃ๏ธ--route-hostโ add a route based onHostheader--route-uriโ add a route based onREQUEST_URI--route-qsโ add a route based onQUERY_STRING--route-remote-addrโ add a route based onREMOTE_ADDR--route-user-agentโ add a route based onHTTP_USER_AGENT--route-remote-userโ add a route based onREMOTE_USER--route-refererโ add a route based onHTTP_REFERER--route-labelโ add a routing label (for use withgoto) ๐ท๏ธ--route-ifโ add a route based on condition--route-if-notโ add a route based on condition (negate version) ๐--route-runโ always run the specified route action--final-routeโ add a final route ๐--final-route-statusโ add a final route for the specified status--final-route-hostโ add a final route based onHostheader--final-route-uriโ add a final route based onREQUEST_URI--final-route-qsโ add a final route based onQUERY_STRING--final-route-remote-addrโ add a final route based onREMOTE_ADDR--final-route-user-agentโ add a final route based onHTTP_USER_AGENT--final-route-remote-userโ add a final route based onREMOTE_USER--final-route-refererโ add a final route based onHTTP_REFERER--final-route-labelโ add a final routing label (for use withgoto)--final-route-ifโ add a final route based on condition--final-route-if-notโ add a final route based on condition (negate version)--final-route-runโ always run the specified final route action--error-routeโ add an error route ๐ญ--error-route-statusโ add an error route for the specified status--error-route-hostโ add an error route based onHostheader--error-route-uriโ add an error route based onREQUEST_URI--error-route-qsโ add an error route based onQUERY_STRING--error-route-remote-addrโ add an error route based onREMOTE_ADDR--error-route-user-agentโ add an error route based onHTTP_USER_AGENT--error-route-remote-userโ add an error route based onREMOTE_USER--error-route-refererโ add an error route based onHTTP_REFERER--error-route-labelโ add an error routing label (for use withgoto)--error-route-ifโ add an error route based on condition--error-route-if-notโ add an error route based on condition (negate version)--error-route-runโ always run the specified error route action--response-routeโ add a response route ๐ฌ--response-route-statusโ add a response route for the specified status--response-route-hostโ add a response route based onHostheader--response-route-uriโ add a response route based onREQUEST_URI--response-route-qsโ add a response route based onQUERY_STRING--response-route-remote-addrโ add a response route based onREMOTE_ADDR--response-route-user-agentโ add a response route based onHTTP_USER_AGENT--response-route-remote-userโ add a response route based onREMOTE_USER--response-route-refererโ add a response route based onHTTP_REFERER--response-route-labelโ add a response routing label (for use withgoto)--response-route-ifโ add a response route based on condition--response-route-if-notโ add a response route based on condition (negate version)--response-route-runโ always run the specified response route action--router-listโ list enabled routers ๐ก--routers-listโ list enabled routers--error-page-403โ add an error page (html) for managed403response ๐ซ--error-page-404โ add an error page (html) for managed404response--error-page-500โ add an error page (html) for managed500response--websockets-ping-freqโ set the frequency (in seconds) of websockets automatic ping packets ๐--websocket-ping-freqโ set the frequency (in seconds) of websockets automatic ping packets--websockets-pong-toleranceโ set the tolerance (in seconds) of websockets ping/pong subsystem--websocket-pong-toleranceโ set the tolerance (in seconds) of websockets ping/pong subsystem--websockets-max-sizeโ set the max allowed size of websocket messages (in Kbytes, default1024) ๐ฆ--websocket-max-sizeโ set the max allowed size of websocket messages (in Kbytes, default1024)--chunked-input-limitโ set the max size of a chunked input part (default1MB, in bytes)--chunked-input-timeoutโ set default timeout for chunked input โณ--clockโ set a clock source ๐ฐ๏ธ--clock-listโ list enabled clocks--clocks-listโ shows you all the clocks that are enabled, bestie ๐--add-headerโ auto-adds HTTP headers onto the response for you, no manual labour โจ--rem-headerโ auto-removes whatever HTTP header you point at from the response--del-headerโ also auto-removes the HTTP header you specify from the response (yeah, it's the same job as--rem-header, they're twins ๐ซถ)--collect-headerโ stashes that response header into a request var (syntax:header var)--response-header-collectโ same energy, sorry, same job: stash the response header into a request var (syntax:header var)--pull-headerโ stashes the response header into a request var and yanks it out of the response entirely (syntax:header var)--check-staticโ looks for static files in the directory you gave it--check-static-docrootโ looks for static files in the requestedDOCUMENT_ROOT--static-checkโ literally just--check-static's twin: looks for static files in the specified directory--static-mapโ maps a mountpoint to a static directory (or a file, we're flexible ๐)--static-map2โ like--static-mapbut it fully appends the requested resource onto the docroot--static-skip-extโ skips that one extension when doing static file checks--static-indexโ if someone requests a directory, it goes hunting for the file you named--static-safeโ skips the security checks when the file lives under the path you specified--static-cache-pathsโ drops resolved paths into the uWSGI cache for however many seconds you want--static-cache-paths-nameโ uses the cache you named for those static paths--mimefileโ sets the mime types file path (default/etc/mime.types)--mime-fileโ yep, same thing: 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 a filename regexp--static-expires-mtimeโ sets theExpiresheader based on filename regexp and file mtime--static-expires-uriโ sets theExpiresheader based on aREQUEST_URIregexp--static-expires-uri-mtimeโ sets theExpiresheader based onREQUEST_URIregexp and file mtime--static-expires-path-infoโ sets theExpiresheader based on aPATH_INFOregexp--static-expires-path-info-mtimeโ sets theExpiresheader based onPATH_INFOregexp and file mtime--static-gzipโ if your regexp matches the static file translation, it'll go look for a gzip version ๐--static-gzip-allโ checks for a gzip version of every requested static file--static-gzip-dirโ checks for a gzip version of all requested static files in that dir/prefix--static-gzip-prefixโ same deal, 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 ext/suffix you gave--static-gzip-suffixโ and again: checks for a gzip version of all requested static files with the specified ext/suffix--honour-rangeโ turns on support for the HTTPRangeheader ๐ฅ--offload-threadsโ sets how many offload threads to spawn (per-worker, default0)--offload-threadโ the singular twin: sets how many offload threads to spawn (per-worker, default0)--file-serve-modeโ sets the static file serving mode--fileserve-modeโ and its twin sets the static file serving mode too--disable-sendfileโ killssendfile()and makes it rely on the boring oldread()/write()๐ด--check-cacheโ checks for response data in the cache you named (leave it empty for the default cache)--close-on-execโ sets close-on-exec on connection sockets (could be required if you're spawning processes inside requests ๐)--close-on-exec2โ sets close-on-exec on server sockets (also possibly required for spawning processes in requests)--modeโ sets a uWSGI custom mode--envโ sets an environment variable--envdirโ loads a daemontools compatible envdir--early-envdirโ loads a daemontools compatible envdir ASAP, like it's running late fr fr--unenvโ unsets an environment variable--vacuumโ tries to remove every generated file/socket so nothing's left lying around ๐งนโจ--file-writeโ writes the content you give to the file you give (syntax:file=value) before privileges get dropped--cgroupโ shoves the processes into the cgroup you specified--cgroup-optโ sets a value in the specified cgroup option--cgroup-dir-modeโ sets the permission for the cgroup directory (default is700)--namespaceโ runs in a new namespace under the specified rootfs--namespace-keep-mountโ keeps that mountpoint around inside your namespace--nsโ same vibe: runs in a new namespace under the specified rootfs--namespace-netโ adds a network namespace--ns-netโ also adds a network namespace--enable-proxy-protocolโ enablesPROXY1protocol support (only for http parsers, heads up ๐)--reuse-portโ enables theREUSE_PORTflag on the socket (BSD only!)--tcp-fast-openโ enables theTCP_FASTOPENflag on TCP sockets with the qlen value you give--tcp-fastopenโ same one, enables theTCP_FASTOPENflag on TCP sockets with the specified qlen value--tcp-fast-open-clientโ usessendto(..., MSG_FASTOPEN, ...)instead ofconnect()if that's supported--tcp-fastopen-clientโ also usessendto(..., MSG_FASTOPEN, ...)instead ofconnect()if supported--zergโ attaches to a zerg server--zerg-fallbackโ falls back to normal sockets if the zerg server isn't there--zerg-serverโ enables the zerg server on the UNIX socket you specified--cronโ adds a cron task--cron2โ adds a cron task with thekey=valsyntax--unique-cronโ adds a unique cron task โจ--cron-harakiriโ sets the max time (in seconds) we wait for a cron command to finish--legion-cronโ adds a cron task that only runs when this instance is a lord of the specified legion ๐--cron-legionโ same one, adds a cron task runnable only when the instance is a lord of the specified legion--unique-legion-cronโ adds a unique cron task runnable only when the instance is a lord of the specified legion--unique-cron-legionโ and this one adds a unique cron task runnable only when the instance is a lord of the specified legion--loopโ selects the uWSGI loop engine--loop-listโ lists enabled loop engines--loops-listโ also lists enabled loop engines, plural bestie--worker-execโ runs the command you give as a worker--worker-exec2โ runs the specified command as worker (but after thepost_forkhook, fancy)--attach-daemonโ attaches a command/daemon to the master process (and the command must NOT go into background, ok?)--attach-control-daemonโ attaches a command/daemon to the master process (again, command must not background it), and when the daemon dies the master dies too ๐ซ--smart-attach-daemonโ attaches a command/daemon to the master managed by a pidfile (this time the command HAS to daemonize)--smart-attach-daemon2โ attaches a command/daemon to the master managed by a pidfile (and here the command has to NOT daemonize)--legion-attach-daemonโ same as--attach-daemonbut the daemon only runs 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 over to/dev/null--attach-daemon2โ theattach-daemonkeyval variant (it supports smart modes too, slay)--pluginsโ loads uWSGI plugins--pluginโ loads uWSGI plugins (yes, the singular one)--need-pluginsโ loads uWSGI plugins and exits on error, no silent fails here--need-pluginโ loads uWSGI plugins (exit on error), the singular twin--plugins-dirโ adds a directory to the uWSGI plugin search path--plugin-dirโ adds a directory to the uWSGI plugin search path, same thing--plugins-listโ lists enabled plugins--plugin-listโ lists enabled plugins, plural/singular chaos ๐--autoloadโ tries to automatically load plugins whenever unknown options show up--dlopenโ blindly loads a shared library ๐--allowed-modifiersโ a comma separated list of allowed modifiers--remap-modifierโ remaps a request modifier from one id to another--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 so it can be appended to a uwsgi binary (fordata://usage)--printโ simple print--iprintโ simple print, but the immediate version--exitโ forcesexit()on the instance, bye bestie ๐--cflagsโ reports uWSGICFLAGS(so useful when you're building external plugins ๐ )--dot-hโ dumps theuwsgi.hused for building the core (also useful for building external plugins)--config-pyโ dumps theuwsgiconfig.pyused for building the core (useful for building external plugins too)--build-pluginโ builds a uWSGI plugin for the current binary--versionโ prints the uWSGI version--response-headers-limitโ sets the response header maximum size (default:64k)
and that's the whole list, bestie, we made it ๐ periodt ๐ no cap, this page is from uwsgi_geoip version 2.0.31-debian, dated July 2026, and it's the UWSGI_GEOIP(1) manual โ go forth and configure responsibly, you absolute icon ๐โจ
๐ฆ where this page comes from
- ubuntu stonking: uwsgi-plugin-geoip 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