UWSGI-CORE(1)							   User Commands						     UWSGI-CORE(1)

NAME
uwsgi-core - fast (pure C), self-healing, developer-friendly WSGI server SYNOPSIS
uwsgi-core [options...] DESCRIPTION
-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 --http-socket bind to the specified UNIX/TCP socket using HTTP protocol --fastcgi-socket bind to the specified UNIX/TCP socket using FastCGI protocol --protocol force the specified protocol for default sockets --socket-protocol force the specified protocol for default sockets --shared-socket create a shared sacket for advanced jailing or ipc -p|--processes spawn the specified number of workers/processes -p|--workers spawn the specified number of workers/processes -t|--harakiri set harakiri timeout --harakiri-verbose enable verbose mode for harakiri --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 --spooler-harakiri set harakiri timeout for spooler tasks --mule-harakiri set harakiri timeout for mule tasks -x|--xmlconfig load config from xml file -x|--xml load config from xml file --skip-zero skip check of file descriptor 0 -S|--set set a custom placeholder --for (opt logic) for cycle --endfor (opt logic) end for cycle --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-exists (opt logic) check for file/directory existance --if-not-exists (opt logic) check for file/directory existance --ifexists (opt logic) check for file/directory existance --if-file (opt logic) check for file existance --if-not-file (opt logic) check for file existance --if-dir (opt logic) check for directory existance --if-not-dir (opt logic) check for directory existance --ifdir (opt logic) check for directory existance --if-directory (opt logic) check for directory existance --endif (opt logic) end if --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 -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 -l|--listen set the socket listen queue size -v|--max-vars set the amount of internal iovec/vars structures -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 --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) --need-app exit if no app can be loaded -M|--master enable master process --emperor run the Emperor --emperor-tyrant put the Emperor 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 possibile --emperor-broodlord run the emperor in BroodLord mode --emperor-amqp-vhost set emperor amqp virtualhost --emperor-amqp-username set emperor amqp username --emperor-amqp-password set emperor amqp password --emperor-throttle throttle each vassal spawn (in seconds) --emperor-magic-exec prefix vassals config files with exec:// if they have the executable bit --vassals-inherit add config templates to vassals config --vassals-start-hook run the specified command before each vassal starts --vassals-stop-hook run the specified command after vassal's death --vassal-sos-backlog ask emperor for sos if backlog queue has more items than the value specified --auto-snapshot automatically make workers snaphost after reload --reload-mercy set the maximum time (in seconds) a worker can take to reload/shutdown --exit-on-reload force exit even if a reload is requested --die-on-term exit instead of brutal reload on SIGTERM -h|--help show this help -h|--usage show this help -r|--reaper call waitpid(-1,...) after each request to get rid of zombies -R|--max-requests reload workers after the specified amount of managed requests -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 via ftok() for avoiding duplicates -A|--sharedarea create a raw shared memory area of specified pages --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-server enable the threaded cache server --cache-server-threads set the number of threads for the cache server --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) --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-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 --mule add a mule --mules add the specified number of mules --farm add a mule farm --signal send a uwsgi signal to a server --signal-bufsize set buffer size for signal queue --signals-bufsize set buffer size for signal queue -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) --chroot chroot() to the specified directory --uid setuid to the specified user/uid --gid setgid to the specified group/gid --no-initgroups disable additional groups set via initgroups() --unshare unshare() part of the processes and put it in a new namespace --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 --ini load config from ini file -y|--yaml load config from yaml file -y|--yal load config from yaml file -j|--json load config from json file -j|--js load config from json file --sqlite3 load config from sqlite3 db --sqlite load config from sqlite3 db --zeromq create a zeromq pub/sub pair --zmq create a zeromq pub/sub pair --ldap load configuration from ldap server --ldap-schema dump uWSGI ldap schema --ldap-schema-ldif dump uWSGI ldap schema in ldif format --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 --limit-as limit processes address space/vsz --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 --ksm enable Linux KSM --never-swap lock all memory pages avoiding swapping --touch-reload reload uWSGI 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 --propagate-touch over-engineering option for system with flaky signal mamagement --limit-post limit request body --no-orphans automatically kill workers if master dies (can be dangerous for availability) --prio set processes/threads priority --cpu-affinity set cpu affinity --post-buffering enable post buffering --post-buffering-bufsize set buffer size for read() in post buffering mode --upload-progress enable creation of .json files in the specified directory during a file upload --no-default-app do not fallback to default app --manage-script-name automatically rewrite SCRIPT_NAME and PATH_INFO --ignore-script-name ignore SCRIPT_NAME --catch-exceptions report exception has http output (discouraged) --reload-on-exception reload a worker when an exception is raised --reload-on-exception-type reload a worker when a specific exception type is raised --reload-on-exception-value reload a worker when a specific exception value is raised --reload-on-exception-repr reload a worker when a specific exception type+value (language-specific) is raised --udp run the udp server on the specified address --stats enable the stats server on the specified address --stats-server enable the stats server on the specified address --multicast subscribe to specified multicast group --cluster join specified uWSGI cluster --cluster-nodes get nodes list from the specified cluster --cluster-reload send a reload message to the cluster --cluster-log send a log line to the cluster --subscribe-to subscribe to the specified subscription server --st subscribe to the specified subscription server --subscribe subscribe to the specified subscription server --subscribe-freq send subscription announce at the specified interval --subscription-tolerance set tolerance for subscription servers --unsubscribe-on-graceful-reload force unsubscribe request even during graceful reload --snmp enable the embedded snmp server --snmp-community set the snmp community string --check-interval set the interval (in seconds) of master checks --forkbomb-delay sleep for the specified number of seconds when a forkbomb is detected --binary-path force binary path --async enable async mode with specified cores --max-fd set maximum number of file descriptors (requires root privileges) --logto set logfile/udp address --logto2 log to specified file or udp address after privileges drop --logfile-chown chown logfiles --logfile-chmod chmod logfiles --log-syslog log to syslog --log-socket send logs to the specified socket --logger set logger system --threaded-logger offload log writing to a thread --log-zeromq send logs to a zeromq server --log-master delegate logging to master process --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 requestes slower than the specified numbr of seconds --log-4xx log requests with a 4xx response --log-5xx log requests with a 5xx response --log-big log requestes bigger than the specified size --log-sendfile log sendfile requests --log-micros report response time in microseconds instead of milliseconds --log-x-forwarded-for use the ip from X-Forwarded-For header instead of REMOTE_ADDR --master-as-root leave master process running as root --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) --cheap set cheap mode (spawn workers only after the first request) --cheaper set cheaper mode (adaptive process spawning) --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 --idle set idle mode (put uWSGI in cheap mode after inactivity) --die-on-idle shutdown uWSGI when idle --mount load application under mountpoint --grunt enable grunt mode (in-request fork) --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 on SERVER_NAME variable) --vhost-host enable virtualhosting mode (based on HTTP_HOST variable) --add-header automatically add HTTP headers to response --check-static check for static files in the specified directory --check-static-docroot check for static files in the requested DOCUMENT_ROOT --static-check check for static files in the specified directory --static-map map mountpoint to static directory (or file) --static-map2 like static-map but completely appending the requested resource to the docroot --static-skip-ext skip specified extension from staticfile checks --static-index search for specified file if a directory is requested --mimefile set mime types file path (default /etc/mime.types) --mime-file set mime types file path (default /etc/mime.types) --static-expires-type set the Expires header based on content type --static-expires-type-mtime set the Expires header based on content type and file mtime --static-offload-to-thread offload static file serving to a thread (upto the specified number of threads) --file-serve-mode set static file serving mode --fileserve-mode set static file serving mode --check-cache check for response data in the cache --close-on-exec set close-on-exec on sockets (could be required for spawning processes in requests) --mode set uWSGI custom mode --env set environment variable --unenv unset environment variable --vacuum try to remove all of the generated file/sockets --cgroup put the processes in the specified cgroup --cgroup-opt set value in specified cgroup option --namespace run in a new namespace under the specified rootfs --ns run in a new namespace under the specified rootfs --namespace-net add network namespace --ns-net add network namespace --reuse-port enable REUSE_PORT flag on socket (BSD only) --zerg attach to a zerg server --zerg-fallback fallback to normal sockets if the zerg server is not available --zerg-server enable the zerg server on the specified UNIX socket --cron add a cron task --loop select the uWSGI loop engine --worker-exec run the specified command as worker --attach-daemon attach a command/daemon to the master process (the command has to not go in background) --plugins load uWSGI plugins --plugin load uWSGI plugins --plugins-dir add a directory to uWSGI plugin search path --plugin-dir add a directory to uWSGI plugin search path --autoload try to automatically load plugins when unknown options are found --allowed-modifiers comma separated list of allowed modifiers --remap-modifier remap request modifier from one id to another --app *** deprecated *** --dump-options dump the full list of available options --show-config show the current config reformatted as ini --print simple print --version print uWSGI version uwsgi-core 1.2.3-debian July 2013 UWSGI-CORE(1)