73edf54ad421f7ef4bce06022948a7fb90869589
[privoxy.git] / templates / show-status
1 ##########################################################
2 #
3 # Show-Status-CGI Output template for Privoxy.
4 #
5 # USING HTML TEMPLATES:
6 # ---------------------
7 #
8 # Template files are written win plain HTML, with a few
9 # additions:
10 #
11 # - Lines that start with a '#' character like this one
12 #   are ignored
13 #
14 # - Each item in the below list of exported symbols will
15 #   be replaced by dynamically generated text, if they
16 #   are enclosed in '@'-characters. E.g. The string @version@
17 #   will be replaced by the version number of Privoxy.
18 #
19 # - One special application of this is to make whole blocks
20 #   of the HTML template disappear if the condition <name>
21 #   is not given. Simply enclose the block between the two
22 #   strings @if-<name>start and if-<name>-end@. The strings
23 #   should be placed in HTML comments (<!-- -->), so the
24 #   html structure won't be messed when the magic happens.
25 #
26 # USABLE SYMBOLS IN THIS TEMPLATE:
27 # --------------------------------
28 #
29 #  my-ip-addr:
30 #    The IP-address that the client used to reach Privoxy
31 #  my-hostname:
32 #    The hostname associated with my-ip-addr
33 #  admin-address:
34 #    The email address of the Privoxy administrator, as configured
35 #    in the config file
36 #  default-cgi:
37 #    The URL for the "main menu" builtin CGI of Privoxy
38 #  menu:
39 #    List of <li> elements linking to the other available CGIs
40 #  version:
41 #    The Privoxy version number
42 #  code-status:
43 #    The Privoxy development status: "alpha", "beta", or "stable".
44 #  homepage:
45 #    The URL of the Privoxy project, which maintains this software.
46 #
47 #  redirect-url:
48 #    The URL to a script that will redirect to the Privoxy
49 #    documentation for a given item
50 #  invocation:
51 #    The command line with which Privoxy was invoked
52 #  options:
53 #    The options read from the configfile, linked to their
54 #    explanations, plus warnings if parsing acl or forward
55 #    statements produced errors.
56 #  defines:
57 #    A HTML-formatted list of all conditional #defines used when
58 #    Privoxy was compiled
59 #
60 #
61 # CONDITIONAL SYMBOLS FOR THIS TEMPLATE AND THEIR DEPANDANT SYMBOLS:
62 # ------------------------------------------------------------------
63 #
64 #  unstable:
65 #    This is an alpha or beta Privoxy release
66 #  have-adminaddr-info:
67 #    An e-mail address for the local Privoxy administrator has
68 #    been specified and is available through the "admin-address"
69 #    symbol
70 #  have-proxy-info:
71 #    A URL for Privoxy's online documentation has been
72 #    specified and is available through the "proxy-info-url"
73 #    symbol
74 #  have-help-info:
75 #    If either have-proxy-info is true or have-adminaddr-info is
76 #    true, have-help-info is true.  Used to conditionally include
77 #    a grey box for any and all help info.
78 #  statistics:
79 #    Privoxy was compiled with statistics support
80 #  have-stats:
81 #    There have been previous requests and statistics have
82 #    been collected. In this case, the following symbols
83 #    are available:
84 #    requests-received:
85 #      The number of requests received so far
86 #    requests-blocked:
87 #      The number of request blocked so far
88 #    percent-blocked:
89 #      The percentage of blocked requests
90 #  have-no-stats:
91 #    There haven't any statistics been collected yet
92 #  extended-statistics:
93 #    Privoxy was compiled with extended statistiscs support.
94 #    In this case the following symbols are available:
95 #    block-reason-statistics:
96 #      Table content of block reasons and how often they were used.
97 #    filter-statistics:
98 #      Table content of content filter statistics.
99 #  pcrs-support:
100 #    Privoxy was compiled with pcrs support
101 #  trust-support:
102 #    Privoxy was compiled with trust support
103 #  actions-filenames:
104 #    The path to the actions files.
105 #  re-filter-filenames:
106 #    The path to the re_filter files. Only available if
107 #    pcrs-support is set
108 #  trust-filename:
109 #    The path to the trust file. Only available if
110 #    trust-support is set
111 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
112 <html>
113
114 <head>
115   <title>Privoxy@@my-hostname@: Proxy Status</title>
116   <meta http-equiv="Content-Style-Type" content="text/css">
117   <meta http-equiv="Content-Script-Type" content="text/javascript">
118   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
119   <meta name="robots" content="noindex,nofollow">
120   <link rel="stylesheet" type="text/css" href="@default-cgi@send-stylesheet">
121   <link rel="shortcut icon" href="@default-cgi@favicon.ico" type="image/x-icon">
122 </head>
123
124 <body>
125
126   <table summary="" cellpadding="20" cellspacing="10" border="0" width="100%">
127     <tr>
128       <td class="title">
129
130 #include mod-title
131
132       </td>
133     </tr>
134
135 <!-- @if-unstable-start -->
136 # This will only appear if CODE_STATUS is "alpha" or "beta". See configure.in
137     <tr>
138       <td class="warning">
139
140 #include mod-unstable-warning
141
142       </td>
143     </tr>
144 <!-- if-unstable-end@ -->
145
146     <tr>
147       <td class="box">
148         <h2>The following files are in use:</h2>
149         <table summary="Action, filter and trust files in use." class="transparent">
150           <tr>
151             <th colspan="2"><a href="@user-manual@@actions-help-prefix@ACTIONS-FILE">Actions Files:</a></th>
152           </tr>
153             @actions-filenames@
154           <tr>
155             <th colspan="2"><a href="@user-manual@filter-file.html">Filter Files:</a></th>
156           </tr>
157             @re-filter-filenames@
158 <!-- @if-trust-support-start -->
159           <tr>
160             <th colspan="2"><a href="@user-manual@config.html#TRUSTFILE">Trust File:</a></th>
161           </tr>
162           <tr>
163             <td>
164               @trust-filename@
165             </td>
166             <td class="buttons">
167               <!-- @if-have-trustfile-start -->
168               <a href="show-status?file=trust">View</a>
169               <!-- if-have-trustfile-end@ -->
170             </td>
171           </tr>
172 <!-- if-trust-support-end@ -->
173         </table>
174 <!-- @if-cgi-editor-is-disabled-start -->
175         <p>
176           The CGI editor is currently disabled, thus no edit buttons are shown.<br>
177           Please have a look at the
178            <a href="@user-manual@config.html#ENABLE-EDIT-ACTIONS">enable-edit-actions documentation</a>
179           to learn how to enable it and what the risks are.
180         </p>
181 <!--  if-cgi-editor-is-disabled-end@ -->
182       </td>
183     </tr>
184
185     <tr>
186       <td class="box">
187         <h2>Privoxy was <a href="@user-manual@startup.html#CMDOPTIONS">invoked</a> as follows:</h2>
188         <p>@invocation@</p>
189       </td>
190     </tr>
191
192     <tr>
193       <td class="box">
194         <h2>The following options were given in the <a href="@user-manual@config.html">config file</a>:</h2>
195         <p>@options@</p>
196       </td>
197     </tr>
198
199 <!-- @if-statistics-start -->
200     <tr>
201       <td class="box">
202         <h2>Blocking Statistics:</h2>
203         <p>
204   <!-- @if-have-stats-start -->
205           @requests-blocked@ out of @requests-received@ requests have been blocked,
206           which equals a block rate of @percent-blocked@%.
207         </p>
208         <p>
209           <strong>Note that the statistics currently don't work properly for
210           reused connections where only the last request gets counted.
211           You may want to look into Privoxy-Log-Parser's --statistics option,
212           which doesn't have this limitation.</strong>
213 <!-- if-have-stats-end@ -->
214 <!-- @if-have-no-stats-start -->
215           There haven't been any requests so far.
216 <!-- if-have-no-stats-end@ -->
217         </p>
218       </td>
219     </tr>
220 <!-- if-statistics-end@ -->
221
222 <!-- @if-extended-statistics-start -->
223     <tr>
224       <td class="box">
225         <h2>Block Reason Statistics:</h2>
226         <table summary="Statistics for block reasons" border="1">
227          <tr><th>Block reason</th><th>Count</th></tr>
228 @block-reason-statistics@        </table>
229       </td>
230     </tr>
231     <tr>
232       <td class="box">
233         <h2>Content Filter Statistics:</h2>
234         <table summary="Statistics for content filters" border="1">
235          <tr><th>Filter name</th><th>Executions</th><th>Pages modified</th><th>Hits</th></tr>
236 @filter-statistics@        </table>
237       </td>
238     </tr>
239 <!-- if-extended-statistics-end@ -->
240
241     <tr>
242       <td class="box">
243         <h2>Conditional #defines:</h2>
244           <table summary="The state of some ./configure options and what they do." border="1" style="margin-left: 10px">
245             <tr>
246               <th>#define</th> <th>Enabled?</th> <th>Effects when enabled</th>
247             </tr>
248
249             <tr>
250               <td><code>FEATURE_64_BIT_TIME_T</code></td>
251               <td>@if-FEATURE_64_BIT_TIME_T-then@ Yes @else-not-FEATURE_64_BIT_TIME_T@ No @endif-FEATURE_64_BIT_TIME_T@</td>
252               <td>Dates before 1970 and after 2038 are (hopefully) supported.</td>
253             </tr>
254             <tr>
255               <td><code>FEATURE_ACCEPT_FILTER</code></td>
256               <td>@if-FEATURE_ACCEPT_FILTER-then@ Yes @else-not-FEATURE_ACCEPT_FILTER@ No @endif-FEATURE_ACCEPT_FILTER@</td>
257               <td>Support for FreeBSD's accf_http(9) which is also available on some other BSDs.</td>
258             </tr>
259             <tr>
260               <td><code>FEATURE_ACL</code></td>
261               <td>@if-FEATURE_ACL-then@ Yes @else-not-FEATURE_ACL@ No @endif-FEATURE_ACL@</td>
262               <td>Allows the use of an ACL to control access to Privoxy by IP address.</td>
263             </tr>
264             <tr>
265               <td><code>FEATURE_BROTLI</code></td>
266               <td>@if-FEATURE_BROTLI-then@ Yes @else-not-FEATURE_BROTLI@ No @endif-FEATURE_BROTLI@</td>
267               <td>Allows to decompress content with Brotli before filtering it. Requires external brotli library.</td>
268             </tr>
269             <tr>
270               <td><code>FEATURE_CGI_EDIT_ACTIONS</code></td>
271               <td>@if-FEATURE_CGI_EDIT_ACTIONS-then@ Yes @else-not-FEATURE_CGI_EDIT_ACTIONS@ No @endif-FEATURE_CGI_EDIT_ACTIONS@</td>
272               <td>Allows the use of the @if-FEATURE_CGI_EDIT_ACTIONS-then@<a
273                  href="@default-cgi@edit-actions">@else-not-FEATURE_CGI_EDIT_ACTIONS@
274                  @endif-FEATURE_CGI_EDIT_ACTIONS@web-based actions file
275                  editor@if-FEATURE_CGI_EDIT_ACTIONS-then@</a>@else-not-FEATURE_CGI_EDIT_ACTIONS@@endif-FEATURE_CGI_EDIT_ACTIONS@.</td>
276             </tr>
277             <tr>
278               <td><code>FEATURE_CLIENT_TAGS</code></td>
279               <td>@if-FEATURE_CLIENT_TAGS-then@ Yes @else-not-FEATURE_CLIENT_TAGS@ No @endif-FEATURE_CLIENT_TAGS@</td>
280               <td>
281                Allows clients to request to be tagged.
282               </td>
283             </tr>
284             <tr>
285               <td><code>FEATURE_COMPRESSION</code></td>
286               <td>@if-FEATURE_COMPRESSION-then@ Yes @else-not-FEATURE_COMPRESSION@ No @endif-FEATURE_COMPRESSION@</td>
287               <td>
288                Allows to compress buffered content before sending it to the client, assuming the client supports it.
289               </td>
290             </tr>
291             <tr>
292               <td><code>FEATURE_CONNECTION_KEEP_ALIVE</code></td>
293               <td>@if-FEATURE_CONNECTION_KEEP_ALIVE-then@ Yes @else-not-FEATURE_CONNECTION_KEEP_ALIVE@ No @endif-FEATURE_CONNECTION_KEEP_ALIVE@</td>
294               <td>
295                Allows to send multiple request through the same connections if the server supports it.
296                Requires the keep-alive-timeout config directive to be set.
297               </td>
298             </tr>
299             <tr>
300               <td><code>FEATURE_CONNECTION_SHARING</code></td>
301               <td>@if-FEATURE_CONNECTION_SHARING-then@ Yes @else-not-FEATURE_CONNECTION_SHARING@ No @endif-FEATURE_CONNECTION_SHARING@</td>
302               <td>
303                Allows to share outgoing connections between incoming connections.
304                Requires the connection-sharing config directive to be set.
305               </td>
306             </tr>
307             <tr>
308               <td><code>FEATURE_EXTERNAL_FILTERS</code></td>
309               <td>@if-FEATURE_EXTERNAL_FILTERS-then@ Yes @else-not-FEATURE_EXTERNAL_FILTERS@ No @endif-FEATURE_EXTERNAL_FILTERS@</td>
310               <td>
311                Allows to <a href="@user-manual@actions-file.html#EXTERNAL-FILTER">filter content
312                with external scripts and programs</a> written in any language the system Privoxy
313                runs on supports.
314               </td>
315             </tr>
316             <tr>
317               <td><code>FEATURE_DYNAMIC_PCRE</code></td>
318               <td>@if-FEATURE_DYNAMIC_PCRE-then@ Yes @else-not-FEATURE_DYNAMIC_PCRE@ No @endif-FEATURE_DYNAMIC_PCRE@</td>
319               <td>Dynamically link to the PCRE library. This is set automatically
320                by <code>./configure</code> if you do not have libpcre installed.
321                Dynamically linking to an external libpcre is recommended as the one that is distributed
322                with Privoxy itself is outdated and lacks various features and bug-fixes you may be interested in.</td>
323             </tr>
324             <tr>
325               <td><code>FEATURE_FAST_REDIRECTS</code></td>
326               <td>@if-FEATURE_FAST_REDIRECTS-then@ Yes @else-not-FEATURE_FAST_REDIRECTS@ No @endif-FEATURE_FAST_REDIRECTS@</td>
327               <td>Allows the +fast-redirects action, to bypass redirect and logging scripts.</td>
328             </tr>
329             <tr>
330               <td><code>FEATURE_FORCE_LOAD</code></td>
331               <td>@if-FEATURE_FORCE_LOAD-then@ Yes @else-not-FEATURE_FORCE_LOAD@ No @endif-FEATURE_FORCE_LOAD@</td>
332               <td>
333                Allows bypassing all blocking for a single page using the prefix
334                <q><code>@force-prefix@</code></q> provided blocks aren't enforced with the
335                <a href="@user-manual@config.html#ENFORCE-BLOCKS">enforce-blocks</a> directive.
336               </td>
337             </tr>
338             <tr>
339               <td><code>FEATURE_GRACEFUL_TERMINATION</code></td>
340               <td>@if-FEATURE_GRACEFUL_TERMINATION-then@ Yes @else-not-FEATURE_GRACEFUL_TERMINATION@ No @endif-FEATURE_GRACEFUL_TERMINATION@</td>
341               <td>Allows to shutdown Privoxy through the web interface.</td>
342             </tr>
343             <tr>
344               <td><code>FEATURE_HTTPS_INSPECTION</code></td>
345               <td>@if-FEATURE_HTTPS_INSPECTION-then@ Yes @else-not-FEATURE_HTTPS_INSPECTION@ No @endif-FEATURE_HTTPS_INSPECTION@</td>
346               <td>Allows to intercept and filter HTTPS traffic.</td>
347             </tr>
348             <tr>
349               <td><code>FEATURE_IMAGE_BLOCKING</code></td>
350               <td>@if-FEATURE_IMAGE_BLOCKING-then@ Yes @else-not-FEATURE_IMAGE_BLOCKING@ No @endif-FEATURE_IMAGE_BLOCKING@</td>
351               <td>Allows the +handle-as-image action, to send <q>blocked</q> images instead of HTML.</td>
352             </tr>
353             <tr>
354               <td><code>FEATURE_IPV6_SUPPORT</code></td>
355               <td>@if-FEATURE_IPV6_SUPPORT-then@ Yes @else-not-FEATURE_IPV6_SUPPORT@ No @endif-FEATURE_IPV6_SUPPORT@</td>
356               <td>
357                Allows IPv6 addresses in incoming requests, when resolving domains to
358                IP addresses and in the configuration files.
359               </td>
360             </tr>
361             <tr>
362               <td><code>FEATURE_NO_GIFS</code></td>
363               <td>@if-FEATURE_NO_GIFS-then@ Yes @else-not-FEATURE_NO_GIFS@ No @endif-FEATURE_NO_GIFS@</td>
364               <td>Use PNG instead of GIF for the built-in images.</td>
365             </tr>
366             <tr>
367               <td><code>FEATURE_PTHREAD</code></td>
368               <td>@if-FEATURE_PTHREAD-then@ Yes @else-not-FEATURE_PTHREAD@ No @endif-FEATURE_PTHREAD@</td>
369               <td>Use POSIX threads rather than native threads</td>
370             </tr>
371             <tr>
372               <td><code>FEATURE_STATISTICS</code></td>
373               <td>@if-FEATURE_STATISTICS-then@ Yes @else-not-FEATURE_STATISTICS@ No @endif-FEATURE_STATISTICS@</td>
374               <td>Enables the statistics function.</td>
375             </tr>
376             <tr>
377               <td><code>FEATURE_STRPTIME_SANITY_CHECKS</code></td>
378               <td>@if-FEATURE_STRPTIME_SANITY_CHECKS-then@ Yes @else-not-FEATURE_STRPTIME_SANITY_CHECKS@ No @endif-FEATURE_STRPTIME_SANITY_CHECKS@</td>
379               <td>Try to work around broken strptime() implementations.</td>
380             </tr>
381             <tr>
382               <td><code>FEATURE_TOGGLE</code></td>
383               <td>@if-FEATURE_TOGGLE-then@ Yes @else-not-FEATURE_TOGGLE@ No @endif-FEATURE_TOGGLE@</td>
384               <td>Allow Privoxy to be <q>disabled</q> so it is just a normal non-blocking non-filtering proxy.</td>
385             </tr>
386             <tr>
387               <td><code>FEATURE_TRUST</code></td>
388               <td>@if-FEATURE_TRUST-then@ Yes @else-not-FEATURE_TRUST@ No @endif-FEATURE_TRUST@</td>
389               <td>Allows the use of trust files.</td>
390             </tr>
391             <tr>
392               <td><code>FEATURE_ZLIB</code></td>
393               <td>@if-FEATURE_ZLIB-then@ Yes @else-not-FEATURE_ZLIB@ No @endif-FEATURE_ZLIB@</td>
394               <td>Allows to decompress gzip and zlib compressed documents for filtering.
395                 Requires external zlib library and hasn't been tested on all platforms.</td>
396             </tr>
397           </table>
398       </td>
399     </tr>
400
401     <tr>
402       <td class="box">
403         <h2>More Privoxy:</h2>
404         <ul>@menu@<li><a href="@user-manual@">Documentation</a></li></ul>
405       </td>
406     </tr>
407
408 <!-- @if-have-help-info-start -->
409     <tr>
410       <td class="info">
411
412 #include mod-local-help
413
414       </td>
415     </tr>
416 <!-- if-have-help-info-end@ -->
417
418     <tr>
419       <td class="info">
420
421 #include mod-support-and-service
422
423       </td>
424     </tr>
425
426   </table>
427
428 </body>
429 </html>