| OLD | NEW |
| 1 root /var/www/<%= @vhost %>; | 1 root /var/www/<%= @vhost %>; |
| 2 index index; | 2 index index; |
| 3 default_type text/html; | 3 default_type text/html; |
| 4 charset utf-8; | 4 charset utf-8; |
| 5 | 5 |
| 6 set $index_page "index"; | 6 set $index_page "index"; |
| 7 | 7 |
| 8 <% if @custom_config %> | 8 <% if @custom_config %> |
| 9 <%= @custom_config %> | 9 <%= @custom_config %> |
| 10 <% end %> | 10 <% end %> |
| 11 | 11 |
| 12 location / | 12 location / |
| 13 { | 13 { |
| 14 expires 1d; | 14 expires 1d; |
| 15 | 15 |
| 16 # Redirect server/language root |
| 17 |
| 18 rewrite ^/$ /$index_page last; |
| 19 rewrite ^/(\w\w(_\w\w)?)$ /$1/ permanent; |
| 20 rewrite ^/(\w\w(_\w\w)?)/$ /$1/$index_page last; |
| 21 |
| 16 # Match Accept-Language header against available languages | 22 # Match Accept-Language header against available languages |
| 17 | 23 |
| 18 set $preferredLang en; | 24 set $preferredLang en; |
| 19 set $preferredRegion ""; | 25 set $preferredRegion ""; |
| 20 if ($http_accept_language ~ ^(\w\w)\b) | 26 if ($http_accept_language ~ ^(\w\w)\b) |
| 21 { | 27 { |
| 22 set $preferredLang $1; | 28 set $preferredLang $1; |
| 23 } | 29 } |
| 24 if ($http_accept_language ~ ^\w\w-(\w\w)\b) | 30 if ($http_accept_language ~ ^\w\w-(\w\w)\b) |
| 25 { | 31 { |
| (...skipping 14 matching lines...) Expand all Loading... |
| 40 } | 46 } |
| 41 if (-e "$document_root/$preferredLang$uri") | 47 if (-e "$document_root/$preferredLang$uri") |
| 42 { | 48 { |
| 43 rewrite ^(.*) /$preferredLang$1 last; | 49 rewrite ^(.*) /$preferredLang$1 last; |
| 44 } | 50 } |
| 45 if (-e "$document_root/en$uri") | 51 if (-e "$document_root/en$uri") |
| 46 { | 52 { |
| 47 rewrite ^(.*) /en$1 last; | 53 rewrite ^(.*) /en$1 last; |
| 48 } | 54 } |
| 49 | 55 |
| 50 # Redirect server/language root | |
| 51 | |
| 52 rewrite ^/$ /$index_page last; | |
| 53 rewrite ^/(\w\w(_\w\w)?)$ /$1/ permanent; | |
| 54 rewrite ^/(\w\w(_\w\w)?)/$ /$1/$index_page last; | |
| 55 } | 56 } |
| 56 | 57 |
| 57 # http://hub.eyeo.com/issues/3299 Redirect missing translations to default | 58 # http://hub.eyeo.com/issues/3299 Redirect missing translations to default |
| 58 location ~ ^/([a-z][a-z]\_[A-Z][A-Z])(/.+) { | 59 location ~ ^/([a-z][a-z]\_[A-Z][A-Z])(/.+) { |
| 59 if (!-e "$document_root$uri") | 60 if (!-e "$document_root$uri") |
| 60 { | 61 { |
| 61 # if there is no /es_Mx/page, redirect to /es/page instead: | 62 # if there is no /es_Mx/page, redirect to /es/page instead: |
| 62 rewrite ^/([a-z][a-z])\_([A-Z][A-Z])(/.+) /$1$3 redirect; | 63 rewrite ^/([a-z][a-z])\_([A-Z][A-Z])(/.+) /$1$3 redirect; |
| 63 } | 64 } |
| 64 } | 65 } |
| 65 | 66 |
| 66 location ~ ^/([a-z][a-z])(/.+) { | 67 location ~ ^/([a-z][a-z])(/.+) { |
| 67 if (!-e "$document_root$uri") | 68 if (!-e "$document_root$uri") |
| 68 { | 69 { |
| 69 # if there is no /es/page, redirect to /page instead: | 70 # if there is no /es/page, redirect to /page instead: |
| 70 rewrite ^/([a-z][a-z])(/.+) $2 redirect; | 71 rewrite ^/([a-z][a-z])(/.+) $2 redirect; |
| 71 } | 72 } |
| 72 } | 73 } |
| 73 | 74 |
| 74 <% if @multiplexer_locations %> | 75 <% if @multiplexer_locations %> |
| 75 <% @multiplexer_locations.each do |location| %> | 76 <% @multiplexer_locations.each do |location| %> |
| 76 location <%= location %> | 77 location <%= location %> |
| 77 { | 78 { |
| 78 fastcgi_pass unix:/tmp/multiplexer-fastcgi.sock; | 79 fastcgi_pass unix:/tmp/multiplexer-fastcgi.sock; |
| 79 include /etc/nginx/fastcgi_params; | 80 include /etc/nginx/fastcgi_params; |
| 80 } | 81 } |
| 81 <% end %> | 82 <% end %> |
| 82 <% end %> | 83 <% end %> |
| OLD | NEW |