aiohttp-wsgi-serve(1)

✨ NAME ✨

okay bestie, this is aiohttp-wsgi-serve(1) πŸ’– and it's giving "run a WSGI application" energy πŸ¦‹

aiohttp-wsgi-serve - run a WSGI application

πŸŽ€ SYNOPSIS πŸŽ€

here's how you call it, no cap πŸ’…

aiohttp-wsgi-serve [-h] [--host HOST] [--port PORT]
                   [--unix-socket UNIX_SOCKET]
                   [--unix-socket-perms UNIX_SOCKET_PERMS]
                   [--backlog BACKLOG] [--static STATIC]
                   [--static-cors STATIC_CORS]
                   [--script-name SCRIPT_NAME]
                   [--url-scheme URL_SCHEME] [--threads THREADS]
                   [--inbuf-overflow INBUF_OVERFLOW]
                   [--max-request-body-size MAX_REQUEST_BODY_SIZE]
                   [--shutdown-timeout SHUTDOWN_TIMEOUT] [--verbose]
                   [--quiet] [--version]
                   module:application

🌈 DESCRIPTION 🌈

okay so this one is simple but iconic ✨ it runs a WSGI application on top of the asyncio event loop 🌊 literally that's the whole vibe.

πŸ‘‘ OPTIONS πŸ‘‘

  • -h, --help β€” pulls up the help message and then peaces out πŸ‘‹ (exits)
  • --host HOST β€” the host interfaces you want to bind 🏠 defaults to '0.0.0.0' and '::', and you can stack this one multiple times
  • --port PORT, -p PORT β€” the port to bind πŸšͺ defaults to 8080
  • --unix-socket UNIX_SOCKET β€” give it a path to a unix socket to bind πŸ”Œ but heads up, it can't be used together with host πŸ’€
  • --unix-socket-perms UNIX_SOCKET_PERMS β€” the filesystem permissions applied to that unix socket πŸ” defaults to 384
  • --backlog BACKLOG β€” the socket connection backlog πŸ“₯ defaults to 1024
  • --static STATIC β€” static route mappings written as 'path=directory' πŸ“ the path has to start with a slash but must not end with one πŸ™… and yes, you can specify this multiple times
  • --static-cors STATIC_CORS β€” set it to '*' to turn on CORS for static files from every origin 🌍 or pass a string to enable CORS for one specific origin 🎯 defaults to None
  • --script-name SCRIPT_NAME β€” the URL prefix for the WSGI application πŸ›£οΈ it should start with a slash but not end with one πŸ™ƒ defaults to ''
  • --url-scheme URL_SCHEME β€” a hint about which URL scheme is used to reach the application πŸ”— it corresponds to environ['wsgi.url_scheme'] and the default is auto-detected to 'http' or 'https' πŸ€–
  • --threads THREADS β€” how many threads process the application logic 🧡 defaults to 4
  • --inbuf-overflow INBUF_OVERFLOW β€” if the request body is bigger than this value (measured in bytes), a tempfile gets created πŸ“„ defaults to 524288
  • --max-request-body-size MAX_REQUEST_BODY_SIZE β€” the maximum number of bytes allowed in a request body 🚫 defaults to 1073741824 bigger requests get an HTTP 413 (Request Entity Too Large) response, so be warned 😭
  • --shutdown-timeout SHUTDOWN_TIMEOUT β€” how long to wait when closing client connections on server shutdown ⏳ defaults to 60.0
  • --verbose, -v β€” turns up the verbosity πŸ“’ you can specify this multiple times for extra drama
  • --quiet, -q β€” turns the verbosity down 🀫 also specifiable multiple times
  • --version β€” displays version information 🏷️

πŸ“ EXAMPLES πŸ“

run a WSGI application on local port 8000 with 8 threads 🧚

$ aiohttp-wsgi-serve --host 127.0.0.1 --port 8000 --threads 8 wsgiapp:main

πŸ’– AUTHOR πŸ’–

aiohttp-wsgi was written by David Hall <dave@etianen.com> 🫢

This manual page was written by William Grzybowski <william@grzy.org> for the Debian project (but may be used by others) 🌸


that's the whole tea β˜•πŸ«Ά aiohttp-wsgi-serve 0.8.2, last glow-up on 29 June 2019 πŸ’œ now go run that app, bestie 🌈✨