1620eda342d05b4aecd572c385a2cdf713bb62a0
[librecmc/librecmc-fossil.git] /
1 ######################################################################
2 #
3 #  File        :  Source: /cvsroot/ijbswa/current/user.action,v
4 #
5 #  Id: user.action,v
6 #
7 #  Purpose     :  User-maintained actions file, see
8 #                 http://www.privoxy.org/user-manual/actions-file.html
9 #
10 ######################################################################
11
12 # This is the place to add your personal exceptions and additions to
13 # the general policies as defined in default.action. (Here they will be
14 # safe from updates to default.action.) Later defined actions always
15 # take precedence, so anything defined here should have the last word.
16
17 # See http://www.privoxy.org/user-manual/actions-file.html, or the
18 # comments in default.action, for an explanation of what an "action" is
19 # and what each action does.
20
21 # The examples included here either use bogus sites, or have the actual
22 # rules commented out (with the '#' character). Useful aliases are
23 # included in the top section as a convenience.
24
25 #############################################################################
26 # Aliases
27 #############################################################################
28 {{=<% %>=}}
29 {{alias}}
30 <%={{ }}=%>
31 #############################################################################
32 #
33 # You can define a short form for a list of permissions - e.g., instead
34 # of "-crunch-incoming-cookies -crunch-outgoing-cookies -filter -fast-redirects",
35 # you can just write "shop". This is called an alias.
36 #
37 # Currently, an alias can contain any character except space, tab, '=', '{'
38 # or '}'.
39 # But please use only 'a'-'z', '0'-'9', '+', and '-'.
40 #
41 # Alias names are not case sensitive.
42 #
43 # Aliases beginning with '+' or '-' may be used for system action names
44 # in future releases - so try to avoid alias names like this.  (e.g.
45 # "+crunch-all-cookies" below is not a good name)
46 #
47 # Aliases must be defined before they are used.
48 #
49 # These aliases just save typing later:
50 #
51 +crunch-all-cookies = +crunch-incoming-cookies +crunch-outgoing-cookies
52 -crunch-all-cookies = -crunch-incoming-cookies -crunch-outgoing-cookies
53  allow-all-cookies  = -crunch-all-cookies -session-cookies-only -filter{content-cookies}
54  allow-popups       = -filter{all-popups} -filter{unsolicited-popups}
55 +block-as-image     = +block{Blocked image request.} +handle-as-image
56 -block-as-image     = -block
57
58 # These aliases define combinations of actions
59 # that are useful for certain types of sites:
60 #
61 fragile     = -block -crunch-all-cookies -filter -fast-redirects -hide-referer -prevent-compression
62 shop        = -crunch-all-cookies allow-popups
63
64 # Your favourite blend of filters:
65 #
66 myfilters   = +filter{html-annoyances} +filter{js-annoyances} +filter{all-popups}\
67               +filter{webbugs} +filter{banners-by-size}
68
69 # Allow ads for selected useful free sites:
70 #
71 allow-ads   = -block -filter{banners-by-size} -filter{banners-by-link}
72 #... etc.  Customize to your heart's content.
73
74 ## end aliases ########################################################
75 #######################################################################
76
77 # Begin examples: #####################################################
78
79 # Say you have accounts on some sites that you visit regularly, and you
80 # don't want to have to log in manually each time. So you'd like to allow
81 # persistent cookies for these sites. The allow-all-cookies alias defined
82 # above does exactly that, i.e. it disables crunching of cookies in any
83 # direction, and the processing of cookies to make them only temporary.
84 #
85 { allow-all-cookies }
86 #.sourceforge.net
87 #sunsolve.sun.com
88 #slashdot.org
89 #.yahoo.com
90 #.msdn.microsoft.com
91 #.redhat.com
92
93 # Say the site where you do your homebanking needs to open popup
94 # windows, but you have chosen to kill popups uncoditionally by default.
95 # This will allow it for your-example-bank.com:
96 #
97 { -filter{all-popups} }
98 .banking.example.com
99
100 # Some hosts and some file types you may not want to filter for
101 # various reasons:
102 #
103 { -filter }
104
105 # Technical documentation is likely to contain strings that might
106 # erroneously get altered by the JavaScript-oriented filters:
107 #
108 #.tldp.org
109 #/(.*/)?selfhtml/
110
111 # And this stupid host sends streaming video with a wrong MIME type,
112 # so that Privoxy thinks it is getting HTML and starts filtering:
113 #
114 stupid-server.example.com/
115
116
117 # Example of a simple "block" action. Say you've seen an ad on your
118 # favourite page on example.com that you want to get rid of. You have
119 # right-clicked the image, selected "copy image location" and pasted
120 # the URL below while removing the leading http://, into a { +block{reason} }
121 # section. Note that { +handle-as-image } need not be specified, since
122 # all URLs ending in .gif will be tagged as images by the general rules
123 # as set in default.action anyway:
124 #
125 { +block{Nasty ads.} }
126 www.example.com/nasty-ads/sponsor.gif
127
128 # The URLs of dynamically generated banners, especially from large banner
129 # farms, often don't use the well-known image file name extensions, which
130 # makes it impossible for Privoxy to guess the file type just by looking
131 # at the URL.
132 # You can use the +block-as-image alias defined above for these cases.
133 # Note that objects which match this rule but then turn out NOT to be an
134 # image are typically rendered as a "broken image" icon by the browser.
135 # Use cautiously.
136 #
137 { +block-as-image }
138 #.doubleclick.net
139 #/Realmedia/ads/
140 #ar.atwola.com/
141
142 # Now you noticed that the default configuration breaks Forbes
143 # Magazine, but you were too lazy to find out which action is the
144 # culprit, and you were again too lazy to give feedback, so you just
145 # used the fragile alias on the site, and -- whoa! -- it worked. The
146 # 'fragile' aliases disables those actions that are most likely to break
147 # a site. Also, good for testing purposes to see if it is Privoxy that
148 # is causing the problem or not.
149 #
150 { fragile }
151 #.forbes.com
152
153 # Here are some sites we wish to support, and we will allow their ads
154 # through.
155 #
156 { allow-ads }
157 #.sourceforge.net
158 #.slashdot.org
159 #.osdn.net
160
161 # user.action is generally the best place to define exceptions and
162 # additions to the default policies of default.action. Some actions are
163 # safe to have their default policies set here though. So let's set a
164 # default policy to have a 'blank' image as opposed to the checkerboard
165 # pattern for ALL sites. '/' of course matches all URLs.
166 # patterns:
167 #
168 { +set-image-blocker{blank} }
169 #/
170
171 # Enable the following section (not the regression-test directives)
172 # to rewrite and redirect click-tracking URLs on news.google.com.
173 # Disabling JavaScript should work as well and probably works more reliably.
174 #
175 # Redirected URL = http://news.google.com/news/url?ct2=us%2F0_0_s_1_1_a&sa=t&usg=AFQjCNHJWPc7ffoSXPSqBRz55jDA0KgxOQ&cid=8797762374160&url=http%3A%2F%2Fonline.wsj.com%2Farticle%2FSB10001424052970204485304576640791304008536.html&ei=YcqeTsymCIjxggf8uQE&rt=HOMEPAGE&vm=STANDARD&bvm=section&did=-6537064229385238098
176 # Redirect Destination = http://online.wsj.com/article/SB10001424052970204485304576640791304008536.html
177 # Ignore = Yes
178 #
179 #{+fast-redirects{check-decoded-url}}
180 #news.google.com/news/url.*&url=http.*&
181
182 # Enable the following section (not the regression-test directives)
183 # to block various Facebook "like" and similar tracking URLs.  At the
184 # time this section was added it was reported to not break Facebook
185 # itself but this may have changed by the time you read this. This URL
186 # list is probably incomplete and if you don't have an account anyway,
187 # you may prefer to block the whole domain.
188 #
189 # Blocked URL = http://www.facebook.com/plugins/likebox.php?href=http%3A%2F%2Ffacebook.com%2Farstechnica&width=300&colorscheme=light&show_faces=false&stream=false&header=false&height=62&border_color=%23FFFFFF
190 # Ignore = Yes
191 # Blocked URL = http://www.facebook.com/plugins/activity.php?site=arstechnica.com&width=300&height=370&header=false&colorscheme=light&recommendations=false&border_color=%23FFFFFF
192 # Ignore = Yes
193 # Blocked URL = http://www.facebook.com/plugins/fan.php?api_key=368513495882&connections=10&height=250&id=8304333127&locale=en_US&sdk=joey&stream=false&width=377
194 # Ignore = Yes
195 # Blocked URL = http://www.facebook.com/plugins/like.php?api_key=368513495882&channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df13997452c%26origin%3Dhttp%253A%252F%252Fonline.wsj.com%252Ff1b037e354%26relation%3Dparent.parent%26transport%3Dpostmessage&extended_social_context=false&href=http%3A%2F%2Fonline.wsj.com%2Farticle%2FSB10001424052970204485304576640791304008536.html&layout=button_count&locale=en_US&node_type=link&ref=wsj_share_FB&sdk=joey&send=false&show_faces=false&width=90
196 # Ignore = Yes
197 #
198 {+block{Facebook "like" and similar tracking URLs.}}
199 www.facebook.com/(extern|plugins)/(login_status|like(box)?|activity|fan)\.php
200
201 {{#if_webfilter_block_google}}
202 {+block{Block all google}}
203 .*google.*
204 {{/if_webfilter_block_google}}
205
206 {{#if_webfilter_block_facebook}}
207 {+block{Block all facebook}}
208 .*facebook.*
209 {{/if_webfilter_block_facebook}}
210
211 {{#if_webfilter_block_twitter}}
212 {+block{Block all twitter}}
213 .*twitter.*
214 {{/if_webfilter_block_twitter}}
215
216 {{#if_webfilter_custom_rules}}
217 {+block{Block custom rules}}
218 {{#webfilter_custom_rules_text}}
219 .*{{rule}}.*
220 {{/webfilter_custom_rules_text}}
221 {{/if_webfilter_custom_rules}}