The WSGI nature of the framework

In this page you can see all the WSGI variables your request object has, the ones in capital letters are required by the spec, then a sorted by component list of variables provided by the Components, and at last the "wsgi." namespace with very useful information about your WSGI Server

The keys in the environment are:

CONTEXT_DOCUMENT_ROOT
/var/www/html
CONTEXT_PREFIX
DOCUMENT_ROOT
/var/www/html
GATEWAY_INTERFACE
CGI/1.1
HTTP_ACCEPT
*/*
HTTP_ACCEPT_ENCODING
gzip, br, zstd, deflate
HTTP_HOST
bbnoten.fietepauker.de
HTTP_USER_AGENT
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
PATH_INFO
/environ
PATH_TRANSLATED
/usr/local/tg250/bbnoten/apache/bbnoten.wsgi/environ
QUERY_STRING
REMOTE_ADDR
216.73.216.229
REMOTE_PORT
19592
REQUEST_METHOD
GET
REQUEST_SCHEME
https
REQUEST_URI
/environ
SCRIPT_FILENAME
/usr/local/tg250/bbnoten/apache/bbnoten.wsgi
SCRIPT_NAME
SERVER_ADDR
31.70.108.224
SERVER_ADMIN
[no address given]
SERVER_NAME
bbnoten.fietepauker.de
SERVER_PORT
443
SERVER_PROTOCOL
HTTP/1.1
SERVER_SIGNATURE
<address>Apache/2.4.68 (Debian) Server at bbnoten.fietepauker.de Port 443</address>
SERVER_SOFTWARE
Apache/2.4.68 (Debian)
SSL_TLS_SNI
bbnoten.fietepauker.de
apache.version
(2, 4, 63)
beaker.cache
<beaker.cache.CacheManager object at 0x7fc18c640830>
beaker.get_session
<bound method SessionApplicationWrapper._get_session of <tg.appwrappers.session.SessionApplicationWrapper object at 0x7fc18c640590>>
beaker.session
{'_domain': None, '_path': '/', '_id': '76ee07d99b3b4b10a8a679da09fbeacd'}
mod_wsgi.application_group
bbnoten.fietepauker.de|
mod_wsgi.callable_object
application
mod_wsgi.daemon_connects
1
mod_wsgi.daemon_restarts
0
mod_wsgi.daemon_start
1784221122835300
mod_wsgi.enable_sendfile
0
mod_wsgi.handler_script
mod_wsgi.ignore_activity
0
mod_wsgi.listener_host
mod_wsgi.listener_port
443
mod_wsgi.path_info
/environ
mod_wsgi.process_group
bbnoten.fietepauker.de
mod_wsgi.queue_start
1784221122835173
mod_wsgi.request_handler
wsgi-script
mod_wsgi.request_id
QzI6Wh25zcQ
mod_wsgi.request_start
1784221122835011
mod_wsgi.script_name
mod_wsgi.script_reloading
1
mod_wsgi.script_start
1784221122835435
mod_wsgi.thread_id
3
mod_wsgi.thread_requests
12
mod_wsgi.total_requests
80
mod_wsgi.version
(5, 0, 2)
paste.cookies
(<SimpleCookie: >, '')
paste.registry
<tg.support.registry.Registry object at 0x7fc18c290110>
repoze.who.api
<repoze.who.api.API object at 0x7fc18c487ee0>
repoze.who.logger
<Logger auth (WARNING)>
repoze.who.plugins
{'main_identifier': <FastFormPlugin:/login_handler 140469260784640>, 'cookie': <AuthTktCookiePlugin 140469260783632>, 'tgappauth': <tg.configuration.auth.metadata._AuthMetadataAuthenticator object at 0x7fc18c640c20>, 'form': <FastFormPlugin:/login_handler 140469260784640>}
tg.locals
<tg.wsgiapp.RequestLocals object at 0x7fc18c231e70>
webob._parsed_cookies
({}, '')
webob._parsed_query_vars
(GET([]), '')
webob.adhoc_attrs
{'identity': None}
wsgi.errors
<_io.TextIOWrapper name='<wsgi.errors>' encoding='utf-8'>
wsgi.file_wrapper
<class 'mod_wsgi.FileWrapper'>
wsgi.input
<mod_wsgi.Input object at 0x7fc18c231fb0>
wsgi.input_terminated
True
wsgi.multiprocess
False
wsgi.multithread
True
wsgi.run_once
False
wsgi.url_scheme
https
wsgi.version
(1, 0)