dirs (owner)

Revisions

gist: 211274 Download_button fork
public
Public Clone URL: git://gist.github.com/211274.git
Embed All Files: show embed
Text only #
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#user nobody;
worker_processes 4;
 
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
 
pid /var/run/nginx/nginx.pid;
 
events {
    worker_connections 1024;
}
 
http {
    include mime.types;
    default_type application/octet-stream;
 
    #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
    # '$status $body_bytes_sent "$http_referer" '
    # '"$http_user_agent" "$http_x_forwarded_for"';
 
    access_log /var/log/nginx/access.log;
 
    # memcached debug
    #log_format mem '[$request] -- $memcached_key';
    #access_log /var/log/nginx/memcached.log mem;
 
    sendfile on;
    tcp_nopush on;
    tcp_nodelay off;
    keepalive_timeout 2;
 
    gzip on;
    gzip_proxied any;
    gzip_comp_level 9;
    gzip_types text/plain text/html text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_buffers 16 8k;
    gzip_static on;
    gzip_http_version 1.1;
gzip_disable "MSIE [1-6].(?!.*SV1)";
    gzip_vary on;
 
    upstream thin_pool_app {
        server 127.0.0.1:4568;
    }
 
    upstream thin_pool_widget {
        server 127.0.0.1:4567;
    }
 
    server {
        listen 80;
        server_name localhost;
 
        root /home/fau/buzz/public/;
        index index.html index.htm;
        error_page 500 502 503 504 /500.html;
 
        location ~ /.svn/ {
            deny all;
}
 
location /nginx_status_test {
stub_status on;
access_log off;
}
 
        location /popular {
            default_type text/html;
            set $memcached_key $uri;
            memcached_pass 127.0.0.1:11211;
            error_page 404 502 @fallback_app;
        }
 
        location /link {
            default_type text/html;
            set $memcached_key $uri;
            memcached_pass 127.0.0.1:11211;
            error_page 404 502 @fallback_app;
        }
 
        location /widget {
internal;
            default_type text/html;
            set $memcached_key $request_uri;
            memcached_pass 127.0.0.1:11211;
            error_page 404 500 502 @fallback_widget;
        }
 
        location / {
            if (-f $request_filename) {
              access_log off
              expires 30d;
              break;
            }
 
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_max_temp_file_size 0;
proxy_intercept_errors on;
 
            if (!-f $request_filename) {
proxy_pass http://thin_pool_app;
break;
            }
        }
 
        location @fallback_app {
            internal;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_max_temp_file_size 0;
proxy_intercept_errors on;
            proxy_pass http://thin_pool_app;
        }
 
        location @fallback_widget {
            internal;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_max_temp_file_size 0;
proxy_intercept_errors on;
            proxy_pass http://thin_pool_widget;
        }
 
    }
 
}