blob: 65f878a63ba9d8791b99e92eb6309c8feacd28a9 (
plain)
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
|
backend default {
.host = "127.0.0.1";
.port = "8080";
}
sub vcl_recv {
if (req.request == "POST" && !req.http.Content-Length) {
error 411 "Content-Length required";
}
# Require that the content be less than 8000 characters
if (req.request == "POST" && !req.http.Content-Length ~ "^[1-7]?[0-9]{1,3}$") {
error 413 "Request content too large (>8000)";
}
if (! (req.url ~ "^/openidm/") ) {
set req.url = regsub(req.url, "^/", "/sqlfiddle/");
}
if ( req.url == "/sqlfiddle/") {
set req.url = "/sqlfiddle/index.html";
}
if (req.request == "GET" && req.url != "/openidm/info/login" && req.url != "/openidm/endpoint/favorites?_queryId=myFavorites") {
unset req.http.cookie;
}
if (req.request == "GET" && req.url == "/openidm/info/ping") {
set req.http.X-OpenIDM-Username = "anonymous";
set req.http.X-OpenIDM-Password = "anonymous";
set req.http.X-OpenIDM-NoSession = "true";
}
}
sub vcl_fetch {
if (req.request == "GET") {
if (req.url ~ "/openidm/info/.*" || req.url == "/openidm/endpoint/favorites?_queryId=myFavorites") {
set beresp.ttl = 0s;
} else {
set beresp.ttl = 60m;
}
}
if (beresp.status != 200) {
set beresp.ttl = 0s;
}
}
|