File: purgetest

package info (click to toggle)
libnginx-mod-http-cache-purge 1%3A2.5.3-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 212 kB
  • sloc: ansic: 1,605; sh: 79; makefile: 3
file content (34 lines) | stat: -rw-r--r-- 1,089 bytes parent folder | download | duplicates (2)
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
#!/bin/sh
set -e

cat <<EOF > "/etc/nginx/sites-enabled/default"
proxy_cache_path  /tmp/ngx_cache_purge_cache keys_zone=test_cache:10m;
proxy_temp_path   /tmp/ngx_cache_purge_temp 1 2;

server {
    listen 127.0.0.1:80 default_server;

    location /proxy {
        proxy_pass         \$scheme://127.0.0.1:\$server_port/etc/passwd;
        proxy_cache        test_cache;
        proxy_cache_key    \$uri\$is_args\$args;
        proxy_cache_valid  3m;
        add_header         X-Cache-Status \$upstream_cache_status;
    }

    location ~ /purge(/.*) {
        proxy_cache_purge  test_cache \$1\$is_args\$args;
    }

    location = /etc/passwd {
        root               /;
    }
}
EOF

nginx -t
invoke-rc.d nginx restart || { journalctl -n all -xu nginx.service; exit 1; }

curl --fail -s -o /dev/null -w "GET key: %{http_code}\n" http://127.0.0.1/proxy/passwd
curl --fail -s -o /dev/null -w "PURGE existing key: %{http_code}\n" -X PURGE http://127.0.0.1/purge/proxy/passwd
curl -s -o /dev/null -w "PURGE non-existing key: %{http_code}\n" -X PURGE http://127.0.0.1/purge/proxy/passwd