BBlack has uploaded a new change for review.
https://gerrit.wikimedia.org/r/232028
Change subject: align text+mobile on filter_(headers|noise) in shared code
......................................................................
align text+mobile on filter_(headers|noise) in shared code
Change-Id: Ic38e9724019a1ec604a1679e1456b837a7e66ebb
---
M modules/varnish/manifests/common/vcl.pp
M templates/varnish/mobile-frontend.inc.vcl.erb
M templates/varnish/text-frontend.inc.vcl.erb
A templates/varnish/textmob-fe-common.inc.vcl.erb
4 files changed, 38 insertions(+), 31 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/puppet
refs/changes/28/232028/1
diff --git a/modules/varnish/manifests/common/vcl.pp
b/modules/varnish/manifests/common/vcl.pp
index 69b0696..7a272b4 100644
--- a/modules/varnish/manifests/common/vcl.pp
+++ b/modules/varnish/manifests/common/vcl.pp
@@ -8,6 +8,13 @@
content => template('varnish/geoip.inc.vcl.erb'),
}
+ file { '/etc/varnish/textmob-fe-common.inc.vcl':
+ owner => 'root',
+ group => 'root',
+ mode => '0444',
+ content => template('varnish/textmob-fe-common.inc.vcl.erb'),
+ }
+
file { '/etc/varnish/last-access.inc.vcl':
owner => 'root',
group => 'root',
diff --git a/templates/varnish/mobile-frontend.inc.vcl.erb
b/templates/varnish/mobile-frontend.inc.vcl.erb
index b7599aa..79e3ddb 100644
--- a/templates/varnish/mobile-frontend.inc.vcl.erb
+++ b/templates/varnish/mobile-frontend.inc.vcl.erb
@@ -5,6 +5,7 @@
include "provenance.inc.vcl";
include "via.inc.vcl";
include "last-access.inc.vcl";
+include "textmob-fe-common.inc.vcl";
// Note that via.inc.vcl will set an X-Analytics value of proxy=IORG
// without inspecting whether there's an existing proxy=<proxy> key-
@@ -18,23 +19,8 @@
// address) in X-Forwarded-For, even if it's the only value, as in
// the example of traffic sourced directly by satellite or something.
-
-sub filter_noise {
- if (req.request == "POST" && req.url ~
"index\.php\?option=com_jce&task=plugin&plugin=imgmanager&file=imgmanager&method=form&cid=")
{
- error 403 "Noise";
- }
-
- // Forged UAs on zerodot. This largely handles lazywebtools below,
incidentally.
- if (req.http.host ~ "zero\.wikipedia\.org" && req.http.User-Agent &&
req.http.User-Agent ~ "Facebookbot|Googlebot") {
- error 403 "Noise";
- }
-
- if (req.http.referer && req.http.referer ~
"^http://(www\.(keeprefreshing|refreshthis|refresh-page|urlreload)\.com|tuneshub\.blogspot\.com|itunes24x7\.blogspot\.com|autoreload\.net|www\.lazywebtools\.co\.uk)/")
{
- error 403 "Noise";
- }
-}
-
sub vcl_recv {
+ call filter_headers;
call filter_noise;
// FIXME: we're seeing an issue with Range requests and gzip/gunzip.
diff --git a/templates/varnish/text-frontend.inc.vcl.erb
b/templates/varnish/text-frontend.inc.vcl.erb
index b0d1e66..1b08e4e 100644
--- a/templates/varnish/text-frontend.inc.vcl.erb
+++ b/templates/varnish/text-frontend.inc.vcl.erb
@@ -5,6 +5,7 @@
include "provenance.inc.vcl";
include "via.inc.vcl";
include "last-access.inc.vcl";
+include "textmob-fe-common.inc.vcl";
// Note that via.inc.vcl will set an X-Analytics value of proxy=IORG
// without inspecting whether there's an existing proxy=<proxy> key-
@@ -50,21 +51,6 @@
error 666 "Found";
}
unset req.http.MobileHost;
- }
-}
-
-sub filter_headers {
- if (req.restarts == 0) {
- unset req.http.Orig-Cookie;
- }
-}
-
-sub filter_noise {
- if (req.url ~ "Special:RecordImpression.*&campaign=wm2015register") {
- error 403 "Noise";
- }
- if (req.request == "POST" && req.url ~
"index\.php\?option=com_jce&task=plugin&plugin=imgmanager&file=imgmanager&method=form&cid=")
{
- error 403 "Noise";
}
}
diff --git a/templates/varnish/textmob-fe-common.inc.vcl.erb
b/templates/varnish/textmob-fe-common.inc.vcl.erb
new file mode 100644
index 0000000..5f9da4a
--- /dev/null
+++ b/templates/varnish/textmob-fe-common.inc.vcl.erb
@@ -0,0 +1,28 @@
+// Shared code for text+mobile frontends
+
+sub filter_headers {
+ if (req.restarts == 0) {
+ unset req.http.Orig-Cookie;
+ unset req.http.X-Orig-Cookie;
+ }
+}
+
+sub filter_noise {
+ if (req.url ~ "Special:RecordImpression.*&campaign=wm2015register") {
+ error 403 "Noise";
+ }
+
+ // Forged UAs on zerodot. This largely handles lazywebtools below,
incidentally.
+ if (req.http.host ~ "zero\.wikipedia\.org" && req.http.User-Agent &&
req.http.User-Agent ~ "Facebookbot|Googlebot") {
+ error 403 "Noise";
+ }
+
+ if (req.http.referer && req.http.referer ~
"^http://(www\.(keeprefreshing|refreshthis|refresh-page|urlreload)\.com|tuneshub\.blogspot\.com|itunes24x7\.blogspot\.com|autoreload\.net|www\.lazywebtools\.co\.uk)/")
{
+ error 403 "Noise";
+ }
+}
+ if (req.request == "POST" && req.url ~
"index\.php\?option=com_jce&task=plugin&plugin=imgmanager&file=imgmanager&method=form&cid=")
{
+ error 403 "Noise";
+ }
+}
+
--
To view, visit https://gerrit.wikimedia.org/r/232028
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic38e9724019a1ec604a1679e1456b837a7e66ebb
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: BBlack <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits