경로에 따라 포트 80 요청을 다른 앱으로 리디렉션

Josh Usre

동일한 서버에 uWSGI 앱과 Kibana4 / 탄력적 검색 스택을 설치해야합니다. uwsgi 앱은 사용자가 [server_IP] / charts /를 통해 서버에 액세스하고 [Server_IP]를 통해 Kibana4에 액세스하고 싶을 때만 사용해야합니다.

둘 다 별도의 conf 파일을 통해 포트 80에서 수신 대기하며 예상대로 uwsgi 앱은 Kibana4가 요청을 수신하는 것을 허용하지 않습니다.

필요한 액세스를 허용하도록 내 conf 파일을 어떻게 조정합니까? 내가 사용해야하는 것 (재 작성, 리디렉션, 기타?)에 대해 약간 혼란 스럽습니다.

시간 내 줘서 고마워

nginx_conf_for_uwsgi :

server {
    server_name           192.168.250.37;
    listen                80;
    root                  /usr/local/wsgi;
    access_log            /var/log/nginx/graph_server/access.log;
    error_log             /var/log/nginx/graph_server/error.log;
    client_max_body_size  500M;
    proxy_read_timeout    600;

location / {
    include             uwsgi_params;
    uwsgi_pass          192.168.250.37:9091;
    uwsgi_read_timeout  600;
    }
}

kibana4.conf :

server {
    listen 80;

    server_name 192.168.250.37;

    #auth_basic "Restricted Access";
    #auth_basic_user_file /etc/nginx/htpasswd.users;

    location / {
        proxy_pass http://192.168.250.37:5601;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

nginx.conf :

user              nginx;
worker_processes  4;
error_log         /var/log/nginx/error.log;
pid               /run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    index         index.html index.htm;

    # Increase header buffer size (needed for PHP)
    proxy_buffer_size        128k;
    proxy_buffers            4 256k;
    proxy_busy_buffers_size  256k;

    # Update the logs to display the real IP address after removing the IP for
    # the load balancers
    set_real_ip_from   redacted;  # a
    set_real_ip_from   redacted;  # b
    real_ip_header     X-Forwarded-For;
    real_ip_recursive  on;

    # Custom logger to display the subdomain folder (if applicable)
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    log_format  log_thing '$remote_addr - $remote_user [$time_local] '
                               '"$request" $status $body_bytes_sent '
                               '"$http_referer" "$http_user_agent" '
                               '"$http_x_forwarded_for" sub:"$subdomain"';
    log_format  i_server  '$remote_addr - $remote_user [$time_local] '
                               '"$request" $status $body_bytes_sent '
                               'filename:"$http_filename"';

    access_log  /var/log/nginx/access.log  main;

    sendfile           on;
    keepalive_timeout  65;

    include /etc/nginx/conf.d/*.conf;

    server {
        listen       80 default_server;
        server_name  localhost;
        root         /usr/share/nginx/html;

        include /etc/nginx/default.d/*.conf;

        location / {
        }

        error_page  404              /404.html;
        location = /40x.html {
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
        }
    }
}
마이크 안드레아 슨

한 가지 방법은 nginx를 이미 수행중인 역방향 프록시로 사용하는 것입니다. 이렇게하면 시스템의 다른 포트에서 수신하는 별도의 nginx 가상 호스트에 다른 위치를 전달하는 포트 80에서 수신하는 하나의 nginx 가상 호스트가 있습니다.

nginx 역방향 프록시 가상 호스트는 다음과 같이 보일 것입니다. 모든 위치가 작동하면 3 개의 proxy_set_header 행을 서버 블록으로 이동할 수 있습니다.

server {
listen 80;
server_name 192.168.250.37;
port_in_redirect off

location / {
    proxy_pass http://127.0.0.1:8081;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }

location /charts {
    proxy_pass http://127.0.0.1:8082;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

그런 다음 Kibanaconf를 포트 8081에서 수신하고 uwsgi를 8082에서 수신하도록 변경하십시오.

또는 두 가상 호스트를 하나로 결합 할 수 있으며 각 위치 아래의 루트 폴더에 대한 사용자 지정 별칭을 설정하고 다시 정렬해야합니다.

server {
listen 80;

server_name 192.168.250.37;
root  /usr/local/wsgi;
client_max_body_size  500M;
proxy_read_timeout    600;
#auth_basic "Restricted Access";
#auth_basic_user_file /etc/nginx/htpasswd.users;

location / {
    proxy_pass http://192.168.250.37:5601;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
}

location /charts {
    include             uwsgi_params;
    uwsgi_pass          192.168.250.37:9091;
    uwsgi_read_timeout  600;
    }
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

포트 80의 Apache 요청이 8080에서 tomcat으로 리디렉션됩니다.

분류에서Dev

포트 80을 8080으로 리디렉션하고 로컬 컴퓨터에서 작동하도록합니다.

분류에서Dev

내 외부 IP / 포트에 대한 요청을 다른 외부 IP / 포트로 리디렉션합니까?

분류에서Dev

URL 경로에 따라 다른 서버로 리디렉션

분류에서Dev

Ubuntu-http / 2 요청을 도메인 및 하위 도메인으로 다른 포트로 리디렉션

분류에서Dev

한 웹 앱에서 다른 웹 앱으로 일부 API 요청 리디렉션

분류에서Dev

조건에 따라 문서 루트를 내부적으로 다른 폴더로 리디렉션

분류에서Dev

방화벽 : 포트 80을 8080으로 리디렉션하고 로컬 컴퓨터에서 작동하도록합니다.

분류에서Dev

시간에 따라 다른 HTML 페이지로 리디렉션

분류에서Dev

Spring을 사용할 때 HTTP에서 HTTP로 브라우저 변경 요청을 리디렉션합니다.

분류에서Dev

한 포트에서 다른 포트로 htaccess 리디렉션

분류에서Dev

하나의 Node.JS 애플리케이션을 사용하여 포트 80에서 다른 앱으로 라우팅 할 때 사용 된 모든 포트를 열어야합니까?

분류에서Dev

웹 사이트에서 만든 모든 JSON 요청을 다른 URL로 리디렉션

분류에서Dev

nginx 요청을 다른 경로로 리디렉션하는 방법

분류에서Dev

nginx 리디렉션 규칙은 다른 포트의 경우에도 모든 것을 https로 리디렉션합니다.

분류에서Dev

ajax 요청에 대한 다른 컨트롤러 작업으로 리디렉션하는 것이 브라우저에서 인식됩니까?

분류에서Dev

Apache-포트 80에서 443으로 모든 taffic 리디렉션 실패

분류에서Dev

하위 도메인 이름에 따라 한 서버에서 다른 서버로 트래픽을 어떻게 리디렉션합니까?

분류에서Dev

디렉토리에 따라 다른 경로

분류에서Dev

라우터가 포트 80에서 트래픽을 올바르게 리디렉션하도록 할 수 없습니다.

분류에서Dev

자바는 반환 다른 URL로 리디렉션하는 봄 엔드 포인트에 몸 POST 요청을 백엔드

분류에서Dev

.htaccess-디렉토리 내의 요청과는 별도로 모든 트래픽을 다른 사이트로 리디렉션하고 WWW도 추가합니다.

분류에서Dev

특정 URL에 대한 요청을 다른 URL로 리디렉션

분류에서Dev

iptables-포트 80으로 향하는 로컬 및 일시적 아웃 바운드 트래픽을 포트 8080으로 리디렉션

분류에서Dev

Sails 정책을 사용하여 req 변수에 따라 요청을 해당 컨트롤러로 리디렉션 할 수 있습니까?

분류에서Dev

Traefik은 하나의 애플리케이션을 포트 80으로 라우팅하고 다른 애플리케이션은 명시 적 포트가 필요합니다.

분류에서Dev

웹 사이트 리디렉션 발생 : 서로 다른 포트 80 및 8080에서 별도의 호스팅 서버 및 도메인 이름 : 해결 방법?

분류에서Dev

HOST 변수를 사용하지 않고 코드 302가있는 요청을 다른 포트로 리디렉션 할 수 있습니까?

분류에서Dev

브라우저는 보안 사이트에서 HTTP에서 HTTPS 로의 301 리디렉션을 따르나요?

Related 관련 기사

  1. 1

    포트 80의 Apache 요청이 8080에서 tomcat으로 리디렉션됩니다.

  2. 2

    포트 80을 8080으로 리디렉션하고 로컬 컴퓨터에서 작동하도록합니다.

  3. 3

    내 외부 IP / 포트에 대한 요청을 다른 외부 IP / 포트로 리디렉션합니까?

  4. 4

    URL 경로에 따라 다른 서버로 리디렉션

  5. 5

    Ubuntu-http / 2 요청을 도메인 및 하위 도메인으로 다른 포트로 리디렉션

  6. 6

    한 웹 앱에서 다른 웹 앱으로 일부 API 요청 리디렉션

  7. 7

    조건에 따라 문서 루트를 내부적으로 다른 폴더로 리디렉션

  8. 8

    방화벽 : 포트 80을 8080으로 리디렉션하고 로컬 컴퓨터에서 작동하도록합니다.

  9. 9

    시간에 따라 다른 HTML 페이지로 리디렉션

  10. 10

    Spring을 사용할 때 HTTP에서 HTTP로 브라우저 변경 요청을 리디렉션합니다.

  11. 11

    한 포트에서 다른 포트로 htaccess 리디렉션

  12. 12

    하나의 Node.JS 애플리케이션을 사용하여 포트 80에서 다른 앱으로 라우팅 할 때 사용 된 모든 포트를 열어야합니까?

  13. 13

    웹 사이트에서 만든 모든 JSON 요청을 다른 URL로 리디렉션

  14. 14

    nginx 요청을 다른 경로로 리디렉션하는 방법

  15. 15

    nginx 리디렉션 규칙은 다른 포트의 경우에도 모든 것을 https로 리디렉션합니다.

  16. 16

    ajax 요청에 대한 다른 컨트롤러 작업으로 리디렉션하는 것이 브라우저에서 인식됩니까?

  17. 17

    Apache-포트 80에서 443으로 모든 taffic 리디렉션 실패

  18. 18

    하위 도메인 이름에 따라 한 서버에서 다른 서버로 트래픽을 어떻게 리디렉션합니까?

  19. 19

    디렉토리에 따라 다른 경로

  20. 20

    라우터가 포트 80에서 트래픽을 올바르게 리디렉션하도록 할 수 없습니다.

  21. 21

    자바는 반환 다른 URL로 리디렉션하는 봄 엔드 포인트에 몸 POST 요청을 백엔드

  22. 22

    .htaccess-디렉토리 내의 요청과는 별도로 모든 트래픽을 다른 사이트로 리디렉션하고 WWW도 추가합니다.

  23. 23

    특정 URL에 대한 요청을 다른 URL로 리디렉션

  24. 24

    iptables-포트 80으로 향하는 로컬 및 일시적 아웃 바운드 트래픽을 포트 8080으로 리디렉션

  25. 25

    Sails 정책을 사용하여 req 변수에 따라 요청을 해당 컨트롤러로 리디렉션 할 수 있습니까?

  26. 26

    Traefik은 하나의 애플리케이션을 포트 80으로 라우팅하고 다른 애플리케이션은 명시 적 포트가 필요합니다.

  27. 27

    웹 사이트 리디렉션 발생 : 서로 다른 포트 80 및 8080에서 별도의 호스팅 서버 및 도메인 이름 : 해결 방법?

  28. 28

    HOST 변수를 사용하지 않고 코드 302가있는 요청을 다른 포트로 리디렉션 할 수 있습니까?

  29. 29

    브라우저는 보안 사이트에서 HTTP에서 HTTPS 로의 301 리디렉션을 따르나요?

뜨겁다태그

보관