Rebuild docs with cors-allowed-origin directive
[privoxy.git] / doc / webserver / user-manual / configuration.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2 "http://www.w3.org/TR/html4/loose.dtd">
3 <html>
4 <head>
5   <title>Privoxy Configuration</title>
6   <meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
7   <link rel="HOME" title="Privoxy 3.0.29 User Manual" href="index.html">
8   <link rel="PREVIOUS" title="Starting Privoxy" href="startup.html">
9   <link rel="NEXT" title="The Main Configuration File" href="config.html">
10   <link rel="STYLESHEET" type="text/css" href="../p_doc.css">
11   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
12   <link rel="STYLESHEET" type="text/css" href="p_doc.css">
13 </head>
14 <body class="SECT1" bgcolor="#EEEEEE" text="#000000" link="#0000FF" vlink="#840084" alink="#0000FF">
15   <div class="NAVHEADER">
16     <table summary="Header navigation table" width="100%" border="0" cellpadding="0" cellspacing="0">
17       <tr>
18         <th colspan="3" align="center">Privoxy 3.0.29 User Manual</th>
19       </tr>
20       <tr>
21         <td width="10%" align="left" valign="bottom"><a href="startup.html" accesskey="P">Prev</a></td>
22         <td width="80%" align="center" valign="bottom"></td>
23         <td width="10%" align="right" valign="bottom"><a href="config.html" accesskey="N">Next</a></td>
24       </tr>
25     </table>
26     <hr align="left" width="100%">
27   </div>
28   <div class="SECT1">
29     <h1 class="SECT1"><a name="CONFIGURATION">6. Privoxy Configuration</a></h1>
30     <p>All <span class="APPLICATION">Privoxy</span> configuration is stored in text files. These files can be edited
31     with a text editor. Many important aspects of <span class="APPLICATION">Privoxy</span> can also be controlled
32     easily with a web browser.</p>
33     <div class="SECT2">
34       <h2 class="SECT2"><a name="CONTROL-WITH-WEBBROWSER">6.1. Controlling Privoxy with Your Web Browser</a></h2>
35       <p><span class="APPLICATION">Privoxy</span>'s user interface can be reached through the special URL <a href=
36       "http://config.privoxy.org/" target="_top">http://config.privoxy.org/</a> (shortcut: <a href="http://p.p/"
37       target="_top">http://p.p/</a>), which is a built-in page and works without Internet access. You will see the
38       following section:</p>
39       <table border="0" bgcolor="#E0E0E0" width="100%">
40         <tr>
41           <td>
42             <pre class="SCREEN"> </pre>
43             <h2 class="BRIDGEHEAD"><a name="AEN915"></a>&nbsp;&nbsp;&nbsp;&nbsp;Privoxy Menu</h2>
44             <pre><br></pre>
45             <table border="0">
46               <tbody>
47                 <tr>
48                   <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&squf;&nbsp;&nbsp;<a href=
49                   "http://config.privoxy.org/show-status" target="_top">View &#38; change the current
50                   configuration</a></td>
51                 </tr>
52                 <tr>
53                   <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&squf;&nbsp;&nbsp;<a href=
54                   "http://config.privoxy.org/client-tags" target="_top">View or toggle the tags that can be set based
55                   on the clients address</a></td>
56                 </tr>
57                 <tr>
58                   <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&squf;&nbsp;&nbsp;<a href=
59                   "http://config.privoxy.org/show-request" target="_top">View the request headers.</a></td>
60                 </tr>
61                 <tr>
62                   <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&squf;&nbsp;&nbsp;<a href=
63                   "http://config.privoxy.org/show-url-info" target="_top">Look up which actions apply to a URL and
64                   why</a></td>
65                 </tr>
66                 <tr>
67                   <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&squf;&nbsp;&nbsp;<a href=
68                   "http://config.privoxy.org/toggle" target="_top">Toggle Privoxy on or off</a></td>
69                 </tr>
70                 <tr>
71                   <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&squf;&nbsp;&nbsp;<a href=
72                   "https://www.privoxy.org/3.0.29/user-manual/" target="_top">Documentation</a></td>
73                 </tr>
74               </tbody>
75             </table>
76           </td>
77         </tr>
78       </table>
79       <p>This should be self-explanatory. Note the first item leads to an editor for the <a href=
80       "actions-file.html">actions files</a>, which is where the ad, banner, cookie, and URL blocking magic is
81       configured as well as other advanced features of <span class="APPLICATION">Privoxy</span>. This is an easy way to
82       adjust various aspects of <span class="APPLICATION">Privoxy</span> configuration. The actions file, and other
83       configuration files, are explained in detail below.</p>
84       <p><span class="QUOTE">"Toggle Privoxy On or Off"</span> is handy for sites that might have problems with your
85       current actions and filters. You can in fact use it as a test to see whether it is <span class=
86       "APPLICATION">Privoxy</span> causing the problem or not. <span class="APPLICATION">Privoxy</span> continues to
87       run as a proxy in this case, but all manipulation is disabled, i.e. <span class="APPLICATION">Privoxy</span> acts
88       like a normal forwarding proxy.</p>
89       <p>Note that several of the features described above are disabled by default in <span class=
90       "APPLICATION">Privoxy</span> 3.0.7 beta and later. Check the <a href="config.html" target="_top">configuration
91       file</a> to learn why and in which cases it's safe to enable them again.</p>
92     </div>
93     <div class="SECT2">
94       <h2 class="SECT2"><a name="CONFOVERVIEW">6.2. Configuration Files Overview</a></h2>
95       <p>For Unix, *BSD and GNU/Linux, all configuration files are located in <tt class="FILENAME">/etc/privoxy/</tt>
96       by default. For MS Windows and OS/2 these are all in the same directory as the <span class=
97       "APPLICATION">Privoxy</span> executable. The name and number of configuration files has changed from previous
98       versions, and is subject to change as development progresses.</p>
99       <p>The installed defaults provide a reasonable starting point, though some settings may be aggressive by some
100       standards. For the time being, the principle configuration files are:</p>
101       <ul>
102         <li>
103           <p>The <a href="config.html">main configuration file</a> is named <tt class="FILENAME">config</tt> on
104           GNU/Linux, Unix, BSD, and OS/2, and <tt class="FILENAME">config.txt</tt> on Windows. This is a required
105           file.</p>
106         </li>
107         <li>
108           <p><tt class="FILENAME">match-all.action</tt> is used to define which <span class="QUOTE">"actions"</span>
109           relating to banner-blocking, images, pop-ups, content modification, cookie handling etc should be applied by
110           default. It should be the first actions file loaded.</p>
111           <p><tt class="FILENAME">default.action</tt> defines many exceptions (both positive and negative) from the
112           default set of actions that's configured in <tt class="FILENAME">match-all.action</tt>. It should be the
113           second actions file loaded and shouldn't be edited by the user.</p>
114           <p>Multiple actions files may be defined in <tt class="FILENAME">config</tt>. These are processed in the
115           order they are defined. Local customizations and locally preferred exceptions to the default policies as
116           defined in <tt class="FILENAME">match-all.action</tt> (which you will most probably want to define sooner or
117           later) are best applied in <tt class="FILENAME">user.action</tt>, where you can preserve them across
118           upgrades. The file isn't installed by all installers, but you can easily create it yourself with a text
119           editor.</p>
120           <p>There is also a web based editor that can be accessed from <a href="http://config.privoxy.org/show-status"
121           target="_top">http://config.privoxy.org/show-status</a> (Shortcut: <a href="http://p.p/show-status" target=
122           "_top">http://p.p/show-status</a>) for the various actions files.</p>
123         </li>
124         <li>
125           <p><span class="QUOTE">"Filter files"</span> (the <a href="filter-file.html">filter file</a>) can be used to
126           re-write the raw page content, including viewable text as well as embedded HTML and JavaScript, and whatever
127           else lurks on any given web page. The filtering jobs are only pre-defined here; whether to apply them or not
128           is up to the actions files. <tt class="FILENAME">default.filter</tt> includes various filters made available
129           for use by the developers. Some are much more intrusive than others, and all should be used with caution. You
130           may define additional filter files in <tt class="FILENAME">config</tt> as you can with actions files. We
131           suggest <tt class="FILENAME">user.filter</tt> for any locally defined filters or customizations.</p>
132         </li>
133       </ul>
134       <p>The syntax of the configuration and filter files may change between different Privoxy versions, unfortunately
135       some enhancements cost backwards compatibility.</p>
136       <p>All files use the <span class="QUOTE">"<tt class="LITERAL">#</tt>"</span> character to denote a comment (the
137       rest of the line will be ignored) and understand line continuation through placing a backslash ("<tt class=
138       "LITERAL">\</tt>") as the very last character in a line. If the <tt class="LITERAL">#</tt> is preceded by a
139       backslash, it looses its special function. Placing a <tt class="LITERAL">#</tt> in front of an otherwise valid
140       configuration line to prevent it from being interpreted is called "commenting out" that line. Blank lines are
141       ignored.</p>
142       <p>The actions files and filter files can use Perl style <a href="appendix.html#REGEX">regular expressions</a>
143       for maximum flexibility.</p>
144       <p>After making any changes, there is no need to restart <span class="APPLICATION">Privoxy</span> in order for
145       the changes to take effect. <span class="APPLICATION">Privoxy</span> detects such changes automatically. Note,
146       however, that it may take one or two additional requests for the change to take effect. When changing the
147       listening address of <span class="APPLICATION">Privoxy</span>, these <span class="QUOTE">"wake up"</span>
148       requests must obviously be sent to the <span class="emphasis"><i class="EMPHASIS">old</i></span> listening
149       address.</p>
150       <p>While under development, the configuration content is subject to change. The below documentation may not be
151       accurate by the time you read this. Also, what constitutes a <span class="QUOTE">"default"</span> setting, may
152       change, so please check all your configuration files on important issues.</p>
153     </div>
154   </div>
155   <div class="NAVFOOTER">
156     <hr align="left" width="100%">
157     <table summary="Footer navigation table" width="100%" border="0" cellpadding="0" cellspacing="0">
158       <tr>
159         <td width="33%" align="left" valign="top"><a href="startup.html" accesskey="P">Prev</a></td>
160         <td width="34%" align="center" valign="top"><a href="index.html" accesskey="H">Home</a></td>
161         <td width="33%" align="right" valign="top"><a href="config.html" accesskey="N">Next</a></td>
162       </tr>
163       <tr>
164         <td width="33%" align="left" valign="top">Starting Privoxy</td>
165         <td width="34%" align="center" valign="top">&nbsp;</td>
166         <td width="33%" align="right" valign="top">The Main Configuration File</td>
167       </tr>
168     </table>
169   </div>
170 </body>
171 </html>