2013-11-20 3 views
2

Я пытаюсь настроить Nginx для прокси материал на локальном хостеНастройка Nginx с proxy_pass с двумя точками

Я хочу быть локальным прокси для локального хоста: 8080 и локальный/тестом будет проксированные на локальный хост: 3000

Вот мой текущий конфигурационный файл

user www-data; 
worker_processes 4; 
pid /var/run/nginx.pid; 

events { 
     worker_connections 768; 
     # multi_accept on; 
} 

http { 

     ## 
     # Basic Settings 
     ## 

     sendfile on; 
     tcp_nopush on; 
     tcp_nodelay on; 
     keepalive_timeout 65; 
     types_hash_max_size 2048; 
     # server_tokens off; 

     # server_names_hash_bucket_size 64; 
     # server_name_in_redirect off; 

     include /etc/nginx/mime.types; 
     default_type application/octet-stream; 

     ## 
     # Logging Settings 
     ## 

     access_log /var/log/nginx/access.log; 
     error_log /var/log/nginx/error.log; 

     ## 
     # Gzip Settings 
     ## 

     access_log /var/log/nginx/access.log; 
     error_log /var/log/nginx/error.log; 

     ## 
     # Gzip Settings 
     ## 

     gzip on; 
     gzip_disable "msie6"; 

     # gzip_vary on; 
     # gzip_proxied any; 
     # gzip_comp_level 6; 
## 
     # nginx-naxsi config 
     ## 
     # Uncomment it if you installed nginx-naxsi 
     ## 

     #include /etc/nginx/naxsi_core.rules; 
    ## 
     # nginx-passenger config 
     ## 
     # Uncomment it if you installed nginx-passenger 
     ## 

     #passenger_root /usr; 
     #passenger_ruby /usr/bin/ruby; 

     ## 
     # Virtual Host Configs 
     ## 

     include /etc/nginx/conf.d/*.conf; 
     include /etc/nginx/sites-enabled/*; 

     server { 

       location/{ 
        proxy_pass http://localhost:8080; 
        proxy_redirect  off; 
        proxy_set_header Host   $host; 
        proxy_set_header X-Real-IP  $remote_addr; 
        proxy_set_header X-Forwarded-for $remote_addr; 
        port_in_redirect off; 
        proxy_connect_timeout 300; 
       } 
       location /test/ { 
        proxy_pass http://localhost:3030; 
        proxy_redirect  off; 
        proxy_set_header Host   $host; 
        proxy_set_header X-Real-IP  $remote_addr; 
        proxy_set_header X-Forwarded-for $remote_addr; 
        port_in_redirect off; 
        proxy_connect_timeout 300; 

       } 
     } 

} 

ответ

1

Я. Я нашел решение .Its работал для меня.

server { 
       location /test { 
        proxy_pass http://localhost:3000; 
       } 
       location/{ 
        proxy_set_header Host   $host; 
        proxy_set_header X-Real-IP  $remote_addr; 
        proxy_set_header X-Forwarded-for $remote_addr; 
        proxy_connect_timeout 300; 
        port_in_redirect off; 
        proxy_pass http://localhost:8080; 

       } 
     } 
+1

Является ли это потому, что '/ test' следует ставить перед'/', в противном случае ситуация'/test', который включен в ситуации '/', будет перенаправлен в соответствии с первым правилом? –

Смежные вопросы