2013-02-19 4 views
-1

mod_python имеет сценарий тестовой страницы, который испускает информацию о конфигурации сервера. Вы можете поставитьСтраница испытания для mod_wsgi

SetHandler mod_python 
PythonHandler mod_python.testhandler 

в ваш .htaccess и отображает страницу.

Теперь мой вопрос: Есть ли что-то подобное для mod_wsgi?

+0

Нисходящий и без комментариев. Спасибо. – glglgl

ответ

1

Нет, вы можете создать что-то вроде полезного перебора ключей окружа, хотя:

def application(env, respond): 
    respond('200 OK', [('Content-Type', 'text/plain')]) 
    return ['\n'.join('%s: %s' % (k, v) for (k, v) in env.iteritems())] 
+0

Спасибо за ваш ответ. Между тем я нашел решение, подобное этому, но я надеялся на что-то более обширное. На тестовом сайте «mod_python» содержится дополнительная информация, такая как общая информация о сервере и его конфигурации. Но окружающая среда - очень хорошее начало. – glglgl

0

Я теперь собрать что-то вроде тестовой страницы здесь. Для вашего удобства я поделюсь им с вами здесь:

def tag(t, **k): 
    kk = ''.join(' %s=%r' % kv for kv in k.items()) 
    format = '<%s%s>%%s</%s>' % (t, kk, t) 
    return lambda content: format % content 

def table(d): 
    from cgi import escape 
    escq = lambda s: escape(s, quote=True) 
    tr = tag('tr') 
    th = tag('th') 
    td_code = lambda content: tag('td')(tag('code')(content)) 
    return tag('table', border='1')(''.join((
     '\n\t' + tr(th('Key') + th('Value') + th('Repr')) + '\n', 
     ''.join(('\t' + tr(td_code('%s') + td_code('%s') + td_code('%s')) + '\n') % (k, escq(str(v)), escq(repr(v))) for k, v in sorted(d.items())), 
    ))) + '\n' 

def application(environ, start_response): 
    import os 
    l = [] 
    from wsgiref.headers import Headers 
    h = Headers(l) 
    h.add_header('Content-Type', 'text/html') 
    start_response('200 OK', l) 
    yield '<html><head><title>my mod_wsgi test page</title></head><body>\n' 
# yield '<h3>General information</h3>\n' 
# yield table({}) 
    yield '<h3>Process info</h3>\n' 
    yield table(dict(
     wd=os.getcwd(), 
     pid=os.getpid(), 
     ppid=os.getppid(), 
     uid=os.getuid(), 
     gid=os.getgid(), 
    )) 
    yield '<h3>Environment</h3>\n' 
    yield table(environ)