Nginx 配置

# For more information on configuration, see:

#  * Official English Documentation: http://nginx.org/en/docs/ 

#  * Official Russian Documentation: http://nginx.org/ru/docs/ 


user nginx; 

worker_processes auto; 

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

pid /run/nginx.pid; 


# Load dynamic modules. See /usr/share/nginx/README.dynamic. 

include /usr/share/nginx/modules/*.conf; 


events { 

    worker_connections 1024; 


http { 

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ' 

                      '$status $body_bytes_sent  ' 

                      ' $request_time $upstream_response_time '; 


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


    sendfile            on; 

    tcp_nopush          on; 

    tcp_nodelay        on; 

    keepalive_timeout  65; 

    types_hash_max_size 2048; 


    include            /etc/nginx/mime.types; 

    default_type        application/octet-stream; 


    client_max_body_size  20m; 

    # Load modular configuration files from the /etc/nginx/conf.d directory. 

    # See http://nginx.org/en/docs/ngx_core_module.html#include 

    # for more information. 

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


#    server { 

#        listen      80 default_server; 

#        listen      [::]:80 default_server; 

#        server_name  _; 

#        root        /usr/share/nginx/html; 

#        # Load configuration files for the default server block. 

#        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 { 

#        } 

#    } 




# Settings for a TLS enabled server. 


  upstream api{ 


    server 127.0.0.1:8080;   

  }   


  upstream websocket{ 


        server 127.0.0.1:8081; 

  } 



    server { 

        listen      443 ssl http2 default_server; 

        listen      [::]:443 ssl http2 default_server; 

        server_name  _; 

        root        /usr/share/nginx/html; 


        ssl_certificate "/etc/nginx/key/test.pem"; 

        ssl_certificate_key "/etc/nginx/key/test.key"; 

        ssl_session_cache shared:SSL:1m; 

        ssl_session_timeout  10m; 

        ssl_ciphers HIGH:!aNULL:!MD5; 

        ssl_prefer_server_ciphers on; 


        rewrite /a.txt /api/a.txt break; 



        # Load configuration files for the default server block. 

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


        location / { 

        } 



    location /api { 

        proxy_pass http://api; 

        # 后端的Web服务器可以通过X-Forwarded-For获取用户真实IP 

        proxy_set_header Host $host; 

        proxy_set_header X-Real-IP $remote_addr; 

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 

        proxy_http_version 1.1;   

        proxy_cookie_path /api/ /; 

    } 



    location /websocket { 

        proxy_pass http://websocket;                             

        proxy_http_version 1.1;                                 

        proxy_set_header Upgrade $http_upgrade; 

        proxy_set_header Connection "upgrade"; 

        proxy_set_header X-Real-IP $remote_addr; 


        proxy_set_header Host $host; 

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 


    } 

location /sourceApi{

proxy_pass http://sourceApi;

# 后端的Web服务器可以通过X-Forwarded-For获取用户真实IP

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

mirror /mirrorApi;

mirror_request_body on;

}

location /mirrorApi{

set $url /;

if ( $request_uri =  /sourceApi/rest/aInterface ){

set $url "/mirrorApi/aInterface;

}

if ( $request_uri = /sourceApi/rest/syncApi/syncPrescription ){

set $url "/mirrorApi/aInterface";

}

                proxy_pass http://mirrorApi$url;

proxy_set_header X-Original-URI $request_uri;

                proxy_set_header Host $host;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        }

        error_page 404 /404.html; 

            location = /40x.html { 

        } 


        error_page 500 502 503 504 /50x.html; 

            location = /50x.html { 

        } 

    } 


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容