-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcgitb.html
More file actions
239 lines (215 loc) · 14.7 KB
/
cgitb.html
File metadata and controls
239 lines (215 loc) · 14.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh_TW">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>22.3. cgitb — Traceback manager for CGI scripts — Python 3.7.0 說明文件</title>
<link rel="stylesheet" href="../_static/pydoctheme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<script type="text/javascript" src="../_static/translations.js"></script>
<script type="text/javascript" src="../_static/sidebar.js"></script>
<link rel="search" type="application/opensearchdescription+xml"
title="在 Python 3.7.0 說明文件 中搜尋"
href="../_static/opensearch.xml"/>
<link rel="author" title="關於這些文件" href="../about.html" />
<link rel="index" title="索引" href="../genindex.html" />
<link rel="search" title="搜尋" href="../search.html" />
<link rel="copyright" title="Copyright" href="../copyright.html" />
<link rel="next" title="22.4. wsgiref — WSGI Utilities and Reference Implementation" href="wsgiref.html" />
<link rel="prev" title="22.2. cgi — Common Gateway Interface support" href="cgi.html" />
<link rel="shortcut icon" type="image/png" href="../_static/py.png" />
<link rel="canonical" href="https://docs.python.org/3/library/cgitb.html" />
<script type="text/javascript" src="../_static/copybutton.js"></script>
<script type="text/javascript" src="../_static/switchers.js"></script>
</head><body>
<div class="related" role="navigation" aria-label="related navigation">
<h3>瀏覽</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
accesskey="I">索引</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python 模組索引"
>模組</a> |</li>
<li class="right" >
<a href="wsgiref.html" title="22.4. wsgiref — WSGI Utilities and Reference Implementation"
accesskey="N">下一頁</a> |</li>
<li class="right" >
<a href="cgi.html" title="22.2. cgi — Common Gateway Interface support"
accesskey="P">上一頁</a> |</li>
<li><img src="../_static/py.png" alt=""
style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="https://www.python.org/">Python</a> »</li>
<li>
<span class="language_switcher_placeholder">zh_TW</span>
<span class="version_switcher_placeholder">3.7.0</span>
<a href="../index.html">Documentation </a> »
</li>
<li class="nav-item nav-item-1"><a href="index.html" >Python 標準函式庫 (Standard Library)</a> »</li>
<li class="nav-item nav-item-2"><a href="internet.html" accesskey="U">22. Internet Protocols and Support</a> »</li>
<li class="right">
<div class="inline-search" style="display: none" role="search">
<form class="inline-search" action="../search.html" method="get">
<input placeholder="Quick search" type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('.inline-search').show(0);</script>
|
</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="module-cgitb">
<span id="cgitb-traceback-manager-for-cgi-scripts"></span><h1>22.3. <a class="reference internal" href="#module-cgitb" title="cgitb: Configurable traceback handler for CGI scripts."><code class="xref py py-mod docutils literal notranslate"><span class="pre">cgitb</span></code></a> — Traceback manager for CGI scripts<a class="headerlink" href="#module-cgitb" title="本標題的永久連結">¶</a></h1>
<p><strong>Source code:</strong> <a class="reference external" href="https://github.com/python/cpython/tree/3.7/Lib/cgitb.py">Lib/cgitb.py</a></p>
<hr class="docutils" id="index-0" />
<p>The <a class="reference internal" href="#module-cgitb" title="cgitb: Configurable traceback handler for CGI scripts."><code class="xref py py-mod docutils literal notranslate"><span class="pre">cgitb</span></code></a> module provides a special exception handler for Python scripts.
(Its name is a bit misleading. It was originally designed to display extensive
traceback information in HTML for CGI scripts. It was later generalized to also
display this information in plain text.) After this module is activated, if an
uncaught exception occurs, a detailed, formatted report will be displayed. The
report includes a traceback showing excerpts of the source code for each level,
as well as the values of the arguments and local variables to currently running
functions, to help you debug the problem. Optionally, you can save this
information to a file instead of sending it to the browser.</p>
<p>To enable this feature, simply add this to the top of your CGI script:</p>
<div class="highlight-python3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">cgitb</span>
<span class="n">cgitb</span><span class="o">.</span><span class="n">enable</span><span class="p">()</span>
</pre></div>
</div>
<p>The options to the <a class="reference internal" href="#cgitb.enable" title="cgitb.enable"><code class="xref py py-func docutils literal notranslate"><span class="pre">enable()</span></code></a> function control whether the report is
displayed in the browser and whether the report is logged to a file for later
analysis.</p>
<dl class="function">
<dt id="cgitb.enable">
<code class="descclassname">cgitb.</code><code class="descname">enable</code><span class="sig-paren">(</span><em>display=1</em>, <em>logdir=None</em>, <em>context=5</em>, <em>format="html"</em><span class="sig-paren">)</span><a class="headerlink" href="#cgitb.enable" title="本定義的永久連結">¶</a></dt>
<dd><p id="index-1">This function causes the <a class="reference internal" href="#module-cgitb" title="cgitb: Configurable traceback handler for CGI scripts."><code class="xref py py-mod docutils literal notranslate"><span class="pre">cgitb</span></code></a> module to take over the interpreter’s
default handling for exceptions by setting the value of <a class="reference internal" href="sys.html#sys.excepthook" title="sys.excepthook"><code class="xref py py-attr docutils literal notranslate"><span class="pre">sys.excepthook</span></code></a>.</p>
<p>The optional argument <em>display</em> defaults to <code class="docutils literal notranslate"><span class="pre">1</span></code> and can be set to <code class="docutils literal notranslate"><span class="pre">0</span></code> to
suppress sending the traceback to the browser. If the argument <em>logdir</em> is
present, the traceback reports are written to files. The value of <em>logdir</em>
should be a directory where these files will be placed. The optional argument
<em>context</em> is the number of lines of context to display around the current line
of source code in the traceback; this defaults to <code class="docutils literal notranslate"><span class="pre">5</span></code>. If the optional
argument <em>format</em> is <code class="docutils literal notranslate"><span class="pre">"html"</span></code>, the output is formatted as HTML. Any other
value forces plain text output. The default value is <code class="docutils literal notranslate"><span class="pre">"html"</span></code>.</p>
</dd></dl>
<dl class="function">
<dt id="cgitb.text">
<code class="descclassname">cgitb.</code><code class="descname">text</code><span class="sig-paren">(</span><em>info</em>, <em>context=5</em><span class="sig-paren">)</span><a class="headerlink" href="#cgitb.text" title="本定義的永久連結">¶</a></dt>
<dd><p>This function handles the exception described by <em>info</em> (a 3-tuple containing
the result of <a class="reference internal" href="sys.html#sys.exc_info" title="sys.exc_info"><code class="xref py py-func docutils literal notranslate"><span class="pre">sys.exc_info()</span></code></a>), formatting its traceback as text and
returning the result as a string. The optional argument <em>context</em> is the
number of lines of context to display around the current line of source code
in the traceback; this defaults to <code class="docutils literal notranslate"><span class="pre">5</span></code>.</p>
</dd></dl>
<dl class="function">
<dt id="cgitb.html">
<code class="descclassname">cgitb.</code><code class="descname">html</code><span class="sig-paren">(</span><em>info</em>, <em>context=5</em><span class="sig-paren">)</span><a class="headerlink" href="#cgitb.html" title="本定義的永久連結">¶</a></dt>
<dd><p>This function handles the exception described by <em>info</em> (a 3-tuple containing
the result of <a class="reference internal" href="sys.html#sys.exc_info" title="sys.exc_info"><code class="xref py py-func docutils literal notranslate"><span class="pre">sys.exc_info()</span></code></a>), formatting its traceback as HTML and
returning the result as a string. The optional argument <em>context</em> is the
number of lines of context to display around the current line of source code
in the traceback; this defaults to <code class="docutils literal notranslate"><span class="pre">5</span></code>.</p>
</dd></dl>
<dl class="function">
<dt id="cgitb.handler">
<code class="descclassname">cgitb.</code><code class="descname">handler</code><span class="sig-paren">(</span><em>info=None</em><span class="sig-paren">)</span><a class="headerlink" href="#cgitb.handler" title="本定義的永久連結">¶</a></dt>
<dd><p>This function handles an exception using the default settings (that is, show a
report in the browser, but don’t log to a file). This can be used when you’ve
caught an exception and want to report it using <a class="reference internal" href="#module-cgitb" title="cgitb: Configurable traceback handler for CGI scripts."><code class="xref py py-mod docutils literal notranslate"><span class="pre">cgitb</span></code></a>. The optional
<em>info</em> argument should be a 3-tuple containing an exception type, exception
value, and traceback object, exactly like the tuple returned by
<a class="reference internal" href="sys.html#sys.exc_info" title="sys.exc_info"><code class="xref py py-func docutils literal notranslate"><span class="pre">sys.exc_info()</span></code></a>. If the <em>info</em> argument is not supplied, the current
exception is obtained from <a class="reference internal" href="sys.html#sys.exc_info" title="sys.exc_info"><code class="xref py py-func docutils literal notranslate"><span class="pre">sys.exc_info()</span></code></a>.</p>
</dd></dl>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h4>上個主題</h4>
<p class="topless"><a href="cgi.html"
title="上一章">22.2. <code class="docutils literal notranslate"><span class="pre">cgi</span></code> — Common Gateway Interface support</a></p>
<h4>下個主題</h4>
<p class="topless"><a href="wsgiref.html"
title="下一章">22.4. <code class="docutils literal notranslate"><span class="pre">wsgiref</span></code> — WSGI Utilities and Reference Implementation</a></p>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="../bugs.html">Report a Bug</a></li>
<li>
<a href="https://github.com/python/cpython/blob/3.7/Doc/library/cgitb.rst"
rel="nofollow">Show Source
</a>
</li>
</ul>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>瀏覽</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
>索引</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python 模組索引"
>模組</a> |</li>
<li class="right" >
<a href="wsgiref.html" title="22.4. wsgiref — WSGI Utilities and Reference Implementation"
>下一頁</a> |</li>
<li class="right" >
<a href="cgi.html" title="22.2. cgi — Common Gateway Interface support"
>上一頁</a> |</li>
<li><img src="../_static/py.png" alt=""
style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="https://www.python.org/">Python</a> »</li>
<li>
<span class="language_switcher_placeholder">zh_TW</span>
<span class="version_switcher_placeholder">3.7.0</span>
<a href="../index.html">Documentation </a> »
</li>
<li class="nav-item nav-item-1"><a href="index.html" >Python 標準函式庫 (Standard Library)</a> »</li>
<li class="nav-item nav-item-2"><a href="internet.html" >22. Internet Protocols and Support</a> »</li>
<li class="right">
<div class="inline-search" style="display: none" role="search">
<form class="inline-search" action="../search.html" method="get">
<input placeholder="Quick search" type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('.inline-search').show(0);</script>
|
</li>
</ul>
</div>
<div class="footer">
© <a href="../copyright.html">Copyright</a> 2001-2018, Python Software Foundation.
<br />
The Python Software Foundation is a non-profit corporation.
<a href="https://www.python.org/psf/donations/">Please donate.</a>
<br />
Last updated on 8月 22, 2018.
<a href="../bugs.html">Found a bug</a>?
<br />
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.7.7.
</div>
</body>
</html>