Created
February 27, 2014 09:34
-
-
Save Suor/9247073 to your computer and use it in GitHub Desktop.
mediavault nginx config
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
proxy_cache_path /home/mediavault/cache-mem levels=2:2 keys_zone=ram:400m inactive=48h max_size=26G; | |
proxy_cache_path /home/mediavault/cache-ssd levels=2:2:2 keys_zone=ssd:800m inactive=30d max_size=160G; | |
client_body_temp_path /home/mediavault/cache-mem/tmp; | |
open_file_cache max=5000 inactive=600s; | |
open_file_cache_valid 1200s; | |
open_file_cache_min_uses 2; | |
open_file_cache_errors on; | |
server { | |
server_name i1.r24.me; | |
access_log off; #/home/mediavault/logs/nginx_i1_access_log meta buffer=512k; | |
error_log /home/mediavault/logs/nginx_i1_error_log error; | |
expires max; | |
location ~ "^(/new)?/\w{6,12}\.(jpg|gif|png)$" { | |
proxy_pass http://127.0.0.1:8082; | |
proxy_cache ssd; | |
proxy_cache_bypass $1; | |
proxy_no_cache $1; | |
# proxy_cache_min_uses 2; | |
proxy_temp_path /home/mediavault/cache-ssd/tmp; | |
proxy_cache_key $uri; | |
proxy_cache_lock on; | |
proxy_cache_valid 200 301 302 30d; | |
proxy_cache_valid 404 2m; | |
} | |
location / { | |
proxy_pass http://127.0.0.1:8081; | |
proxy_cache ram; | |
proxy_temp_path /home/mediavault/cache-mem/tmp; | |
proxy_cache_key $uri; | |
# proxy_cache_min_uses 2; | |
proxy_cache_lock on; | |
proxy_cache_valid 200 301 302 24h; | |
proxy_cache_valid 404 415 2m; | |
} | |
location /new/ { | |
proxy_pass http://127.0.0.1:8081; | |
} | |
} | |
server { | |
listen 8082; | |
server_name i1.r24.me; | |
access_log off; | |
error_log /home/mediavault/logs/nginx_static_error_log; | |
location ~ "^(/new)?/\w{6,12}.(jpg|gif|png)$" { | |
root /home/mediavault/storage; | |
rewrite "^(?:/new)?/(\w\w)(\w\w)(\w{2,8})\.(jpg|gif|png)$" /$1/$2/$3.$4 break; | |
} | |
} | |
server { | |
listen 8083; | |
server_name i1.r24.me; | |
access_log off;#/home/mediavault/logs/nginx_static_cached_access_log meta; | |
error_log /home/mediavault/logs/nginx_static_cached_error_log; | |
location ~ "^(/new)?/\w{6,12}.(jpg|gif|png)$" { | |
proxy_pass http://127.0.0.1:8082; | |
proxy_cache ssd; | |
proxy_cache_bypass $1; | |
proxy_no_cache $1; | |
# proxy_cache_min_uses 2; | |
proxy_temp_path /home/mediavault/cache-ssd/tmp; | |
proxy_cache_key $uri; | |
proxy_cache_lock on; | |
proxy_cache_valid 200 301 302 30d; | |
proxy_cache_valid 404 2m; | |
} | |
} | |
server { | |
listen 8081; | |
server_name odin.metadesign.ru; | |
access_log off;#/home/mediavault/logs/nginx_if_access_log meta buffer=512k; | |
error_log /home/mediavault/logs/nginx_if_error_log error; | |
# root /home/mediavault/storage; | |
set $new 0; | |
if ($uri ~ ^/new/) { | |
rewrite ^(?:/new)(.*)$ $1; | |
set $new 1; | |
} | |
if ($uri ~ "^/\w{6,12}-[rc](\d+)x(\d+)\.(jpg|gif|png)$") { | |
set $w $1; | |
set $h $2; | |
set $q 85; | |
} | |
if ($uri ~ "^/\w{6,12}-[rc](\d+)x(\d+)-q(\d+)\.(jpg|gif|png)$") { | |
set $w $1; | |
set $h $2; | |
set $q $3; | |
} | |
if ($w = 0) { set $w '-'; } | |
if ($h = 0) { set $h '-'; } | |
image_filter_jpeg_quality 85; | |
image_filter_buffer 10M; | |
location ~ "^/\w{6,12}-c\d+x\d+(?:-q\d+)?\.(jpg|gif|png)" { | |
proxy_pass http://127.0.0.1:8083; | |
#rewrite "^/(\w\w)(\w\w)(\w{2,8})[^.]+.(jpg|gif|png)$" /$1/$2/$3.$4; | |
rewrite "^/(\w\w)(\w\w)(\w{2,8})[^.]+.(jpg|gif|png)$" /$1$2$3.$4; | |
error_page 404 /notfound; | |
image_filter_jpeg_quality $q; | |
image_filter crop $w $h; | |
break; | |
} | |
location ~ "^/\w{6,12}-r\d+x\d+(?:-q\d+)?\.(jpg|gif|png)" { | |
proxy_pass http://127.0.0.1:8083; | |
#rewrite "^/(\w\w)(\w\w)(\w{2,8})[^.]+.(jpg|gif|png)$" /$1/$2/$3.$4; | |
rewrite "^/(\w\w)(\w\w)(\w{2,8})[^.]+.(jpg|gif|png)$" /$1$2$3.$4; | |
error_page 404 /notfound; | |
image_filter_jpeg_quality $q; | |
image_filter resize $w $h; | |
break; | |
} | |
location = /notfound { | |
return 404; | |
} | |
} | |
upstream mediarouter { | |
# server 127.0.0.1:8500; | |
server 127.0.0.1:9000; | |
server 127.0.0.1:9001; | |
server 127.0.0.1:9002; | |
server 127.0.0.1:9003; | |
} | |
server { | |
listen 80; | |
server_name s1.r24.me; | |
access_log /home/mediavault/logs/nginx_s1_access_log meta buffer=32k; | |
error_log /home/mediavault/logs/nginx_s1_error_log error; | |
location / { | |
proxy_pass http://mediarouter; | |
proxy_connect_timeout 10; | |
} | |
} | |
server { | |
listen 80; | |
server_name s2.r24.me; | |
access_log /home/mediavault/logs/nginx_s2_access_log meta buffer=32k; | |
error_log /home/mediavault/logs/nginx_s2_error_log error; | |
location / { | |
proxy_pass http://127.0.0.1:8500; | |
proxy_connect_timeout 10; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment