nginx 配置域名轉發

本身測試環境,配置下載目錄和一個jenkins的地址:nginx

域名跳轉,反向代理後端

 

# cat ../nginx.conf
user www www;
worker_processes  1;
error_log  logs/error.log  info;
pid        logs/nginx.pid;
worker_rlimit_nofile 65535;
events {
    worker_connections  65535;
    use epoll;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '"$upstream_addr" $status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for" "$request_time" "$host"';
    access_log  logs/access.log  main;
    sendfile        on;
    keepalive_timeout  60;

    gzip on;
    client_max_body_size 50m;  #緩衝區代理緩衝用戶端請求的最大字節數,能夠理解爲保存到本地再傳給用戶
    client_body_buffer_size 256k;
    client_header_timeout 3m;
    client_body_timeout 3m;
    send_timeout 3m;
    proxy_connect_timeout 300s; #nginx跟後端服務器鏈接超時時間(代理鏈接超時)
    proxy_read_timeout 300s; #鏈接成功後,後端服務器響應時間(代理接收超時)
    proxy_send_timeout 300s;
    proxy_buffer_size 64k; #設置代理服務器(nginx)保存用戶頭信息的緩衝區大小
    proxy_buffers 4 32k; #proxy_buffers緩衝區,網頁平均在32k如下的話,這樣設置
    proxy_busy_buffers_size 64k; #高負荷下緩衝大小(proxy_buffers*2)
    proxy_temp_file_write_size 64k;  #設定緩存文件夾大小,大於這個值,將從upstream服務器傳遞請求,而不緩衝到磁盤
    proxy_ignore_client_abort on; #不容許代理端主動關閉鏈接




upstream tomcat_test1 {  
           server 192.168.37.108:8080;  
    }

upstream tomcat_2 {  
           server 192.168.37.109:8080;  
    }



include       /usr/local/nginx/conf/vhosts/*.conf;
}

接下來是server 主機的配置:緩存

# cat /usr/local/nginx/conf/vhosts/test.conf 
server {
        listen       80;
        server_name  www.aliluo.top;


        location /images {
                root    /;
                rewrite ^/image/(.*)$ /image/$1 break;
                access_log /usr/local/nginx/logs/test.log main;
                }
        location /upload {  
                autoindex on;  
                autoindex_exact_size on;  
                autoindex_localtime on;  
                alias   /data/upload;  
                access_log /usr/local/nginx/logs/upload.log main;
                }  
        location /jenkins {
                #反向代理的地址
                proxy_pass http://tomcat_2/jenkins;  
                #設置主機頭和客戶端真實地址,以便服務器獲取客戶端真實IP
                proxy_set_header Host $host;
                proxy_set_header X-Real-Ip $remote_addr;
                proxy_set_header X-Forwarded-For $remote_addr;
                access_log /usr/local/nginx/logs/tomcat_test1.log main;
                }

        }

啓動nginx後,打來連接,就會出現jenkins界面,輸入用戶名,密碼能夠正常登錄:tomcat

登錄頁面:服務器

 

 

備註:app

  1)使用nginx的rewrite 一樣能夠是實現這個功能,可能配置上會有小許不一樣;學習

  2)使用proxy_pass,若是跳轉後輸入用戶名密碼沒法登錄,多是因爲如下參數沒有配置,該參數具體含義能夠參考nginx有關文章自行學習:測試

  proxy_set_header Host $host;spa

  proxy_set_header X-Real-Ip $remote_addr;
  proxy_set_header X-Forwarded-For $remote_addr;
代理

相關文章
相關標籤/搜索