-
Notifications
You must be signed in to change notification settings - Fork 1
/
hotlink.tpl
69 lines (58 loc) · 2.05 KB
/
hotlink.tpl
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
server {
listen %ip%:%proxy_ssl_port% ssl http2;
server_name %domain_idn% %alias_idn%;
ssl_certificate %ssl_pem%;
ssl_certificate_key %ssl_key%;
ssl_stapling on;
ssl_stapling_verify on;
error_log /var/log/%web_system%/domains/%domain%.error.log error;
include %home%/%user%/conf/web/%domain%/nginx.hsts.conf*;
location = /xmlrpc.php {
deny all;
access_log off;
}
include %home%/%user%/conf/web/%domain%/nginx.forcessl.conf*;
location / {
proxy_pass https://%ip%:%web_ssl_port%;
proxy_cache cache;
proxy_cache_valid 15m;
proxy_cache_valid 404 15m;
proxy_no_cache $no_cache;
proxy_cache_bypass $no_cache;
proxy_cache_bypass $cookie_session $http_x_update;
location ~* ^.+\.(mp4|webm|mp3|ogg|ogv)$ {
proxy_cache off;
secure_link $arg_md5,$arg_expires;
secure_link_md5 "$secure_link_expires$uri %user%";
if ($secure_link = "") {
return 403;
}
if ($secure_link = "0") {
return 403;
}
root %sdocroot%;
access_log /var/log/%web_system%/domains/%domain%.log combined;
access_log /var/log/%web_system%/domains/%domain%.bytes bytes;
}
location ~* ^.+\.(%proxy_extensions%)$ {
proxy_cache off;
root %sdocroot%;
access_log /var/log/%web_system%/domains/%domain%.log combined;
access_log /var/log/%web_system%/domains/%domain%.bytes bytes;
expires 1h;
try_files $uri @fallback;
}
}
location /error/ {
alias %home%/%user%/web/%domain%/document_errors/;
}
location @fallback {
proxy_pass https://%ip%:%web_ssl_port%;
}
location ~ /\.ht {return 404;}
location ~ /\.svn/ {return 404;}
location ~ /\.git/ {return 404;}
location ~ /\.hg/ {return 404;}
location ~ /\.bzr/ {return 404;}
include %home%/%user%/conf/web/%domain%/nginx.ssl.conf_*;
}