source: subversion/sites/rails_port/config/nginx.conf @ 14600

Revision 14600, 4.6 KB checked in by tomhughes, 5 years ago (diff)

Convert to unix newlines.

Line 
1user www-data www-data;
2worker_processes  2;
3
4error_log  /var/log/nginx/error.log;
5pid        /var/run/nginx.pid;
6
7events {
8        # max clients = worker_processes * worker_connections
9    worker_connections  1024;
10}
11
12http {
13    include       /etc/nginx/mime.types;
14    default_type  application/octet-stream;
15
16    #access_log  /var/log/nginx/access.log;
17
18    sendfile        on;
19    #tcp_nopush     on;
20
21    #keepalive_timeout  0;
22    keepalive_timeout  65;
23    tcp_nodelay        on;
24
25    gzip  on;
26        gzip_min_length 1100;
27        gzip_buffers 4 8k;
28        # text/html is added gzip_types by default
29        gzip_types text/plain application/x-javascript application/x-shockwave-flash text/css;
30       
31        #NO CGI SUPPORT IN NGINX fix stat .pl later
32
33        upstream web_backend {
34                server 127.0.0.1:8000;
35                server 127.0.0.1:8001;
36                server 127.0.0.1:8002;
37                server 127.0.0.1:8003;
38                server 127.0.0.1:8004;
39                server 127.0.0.1:8005;
40                server 127.0.0.1:8006;
41                server 127.0.0.1:8007;
42                server 127.0.0.1:8008;
43                server 127.0.0.1:8009;
44                server 127.0.0.1:8010;
45                server 127.0.0.1:8011;
46                server 127.0.0.1:8012;
47                server 127.0.0.1:8013;
48                server 127.0.0.1:8014;
49                server 127.0.0.1:8015;
50                server 127.0.0.1:8016;
51                server 127.0.0.1:8017;
52                server 127.0.0.1:8018;
53                server 127.0.0.1:8019;
54                server 127.0.0.1:8020;
55                server 127.0.0.1:8021;
56                server 127.0.0.1:8022;
57                server 127.0.0.1:8023;
58                server 127.0.0.1:8024;
59                server 127.0.0.1:8025;
60                server 127.0.0.1:8026;
61                server 127.0.0.1:8027;
62                server 127.0.0.1:8028;
63                server 127.0.0.1:8029;
64        }
65
66        upstream api_backend {
67                server 127.0.0.1:8030;
68                server 127.0.0.1:8031;
69                server 127.0.0.1:8032;
70                server 127.0.0.1:8033;
71                server 127.0.0.1:8034;
72                server 127.0.0.1:8035;
73                server 127.0.0.1:8036;
74                server 127.0.0.1:8037;
75                server 127.0.0.1:8038;
76                server 127.0.0.1:8039;
77                server 127.0.0.1:8040;
78                server 127.0.0.1:8041;
79                server 127.0.0.1:8042;
80                server 127.0.0.1:8043;
81                server 127.0.0.1:8044;
82        }
83
84        upstream bulkapi_backend {
85                server 10.0.0.10:8000;
86                server 10.0.0.11:8000;
87                server 10.0.0.12:8000;
88                server 10.0.0.10:8001;
89                server 10.0.0.11:8001;
90                server 10.0.0.12:8001;
91                server 10.0.0.10:8002;
92                server 10.0.0.11:8002;
93                server 10.0.0.12:8002;
94                server 10.0.0.10:8003;
95                server 10.0.0.11:8003;
96                server 10.0.0.12:8003;
97        }
98       
99        upstream tah_backend {
100                server 10.0.0.10:8004;
101                server 10.0.0.11:8004;
102                server 10.0.0.12:8004;
103                server 10.0.0.10:8005;
104                server 10.0.0.11:8005;
105                server 10.0.0.12:8005;
106        }
107
108server {
109                listen   80;
110                server_name  .openstreetmap.org api.openstreetmap.org;
111                root /home/rails/public;
112                index index.html;
113                access_log  /var/log/nginx/openstreetmap.org.access.log;
114       
115                include /etc/nginx/fastcgi_params;
116
117                #Redirect Historical Links to correct servers
118                location /trac/ {
119                        rewrite ^/trac/(.*)$ http://trac.openstreetmap.org/$1 permanent;
120                }
121
122                location /wiki/ {
123                        rewrite ^/wiki/(.*)$ http://wiki.openstreetmap.org/$1 permanent;
124                }
125
126                location / {
127                        deny 143.210.16.160;
128                        deny 69.89.21.73;
129                        deny 91.89.145.219;
130                        deny 195.190.169.111;
131                        deny 84.237.213.10;
132                        deny 70.22.219.249;
133                        deny 83.226.40.87;
134                        deny 82.178.145.87;
135                        deny 91.78.50.134;
136                        deny 91.77.7.139;
137                        deny 85.126.23.106;
138                        deny 213.171.196.166;
139                        deny 81.151.8.64;
140                        deny 130.226.235.215;
141                        deny 141.99.254.253;
142                        deny 61.228.43.32;
143                        allow all;
144                }
145       
146                #Handle api.openstreetmap/ -> api.openstreetmap/api/
147                if ($host ~* api\.(.*)) {
148                        rewrite ^/(0\.[0-9]+)/(.*)$ /api/$1/$2
149                }
150       
151                location /api/ {
152                        include /etc/nginx/fastcgi_params;
153                        if ($http_user_agent ~ "^tilesAtHome") {
154                                #deny all;
155                                fastcgi_pass tah_backend;
156                                break;
157                        }
158                }
159
160                location ~ ^/api/0\.6/(map|relation|trackpoints|amf|amf/read|swf/trackpoints|trace/[0-9]+/data)$ {
161                        fastcgi_pass bulkapi_backend;
162                        break;
163                }
164               
165                location ~ ^/api/0\.6/.*/search$ {
166                        fastcgi_pass bulkapi_backend;
167                        break;
168                }
169
170                location ~ ^/api/0\.6/.*/full$ {
171                        fastcgi_pass bulkapi_backend;
172                        break;
173                }
174
175                # fastcgi Web / Data Browser / Relations etc
176                location ~ ^/api/0\.6/ {
177                        fastcgi_pass api_backend;
178                        break;
179                }
180
181                #Deny unknown API version
182                location ~ ^/api/0\.[0-9]+/ {
183                        deny all;
184                }
185                       
186                #Handle Special Case Expiry
187                location ~ ^/(export|openlayers)/ {
188                        expires 7d;
189                }
190                location ~ ^/(images|javascripts|stylesheets)/ {
191                        expires max;
192                }
193       
194                location / {
195                        fastcgi_index index.html;
196                        if (!-f $request_filename) {
197                                fastcgi_pass web_backend;
198                                break;
199                        }
200                }
201
202                location /crossdomain.xml {
203                        default_type text/x-cross-domain-policy;
204                }
205
206                #error_page  404  /404.html;
207        # redirect server error pages to the static page /50x.html
208        error_page   500 502 503 504  /50x.html;
209        location = /50x.html {
210                        root   /var/www/nginx-default;
211                }
212        }
213}
Note: See TracBrowser for help on using the repository browser.