• nginx配置反向代理时的路径问题


    Nginx配置反向代理的路径问题

    新搞了台服务器,开始部署下项目,但是使用域名加端口访问很不给力,决定使用Nginx的反向代理,统一到443端口。但我对Nginx的的了解可以说是完全不了解,那只能通过百度来看看能不能解决问题了

    一张图解决我的配置难题

    之前找的图,我的反向代理基本靠它解决

    在这里插入图片描述

    自己的理解
    • http下,可配置多个server虚拟主机
    • 每个server中,可配置多个location地址
    http块

    Nginx配置中最重要的部分,缓存和日志、反向代理、动态和静态资源分离、负载均衡都在这里配置。

    server块

    一个server相当于一台虚拟的主机,通过监听客户端传来的端口和地址,然后将这条请求定向到自己location中指定地址

    location块

    server监听到请求后,对server_name后的字符路径进行匹配,如果匹配成功,就可执行重定向、数据缓存和应答控制的等功能

    静态资源配置

    假设请求路径为 https://test.xyz/static/test.jpg

    root:会保留匹配的路由路径

    location /static { 
        # 设置静态资源路径(相对路径),查询的路径为/{nginx路径}/html/static/test.jpg
    	root html/;
        # 设置静态资源路径(绝对路径),查询的路径为/var/www/wwwroot/html/static/test.jpg 
        # root /var/www/wwwroot/html/ 
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    alias:会舍去匹配的路由路径

    location /static {
        # 设置静态资源路径(相对路径),查询的路径为/{nginx路径}/html/test.jpg
    	alias html/;
        # 设置静态资源路径(绝对路径),查询的路径为/var/www/wwwroot/html/test.jpg 
        # alias /var/www/wwwroot/html/ 
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    实际配置
    server
        {
            listen 443 ssl;
        	# 自己的域名
            server_name test.xyz;
        	# 设置SSL证书
            ssl_certificate test.xyz_bundle.crt;
            ssl_certificate_key test.xyz.key;
            ssl_session_timeout 5m;
            #请按照以下协议配置
            ssl_protocols TLSv1.2 TLSv1.3; 
            #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
            ssl_prefer_server_ciphers on;
        	# 如果请求中的路由为/hot_wall
            location /hot_wall{
              # 将/hot_wall路由后面的路径全部定向到8800端口上,并不包含/hot_wall
              proxy_pass http://127.0.0.1:8800/;
            }
        }
        server {
          listen 80;
          #自己的域名
          server_name test.xyz; 
          #把http的域名请求转成https
          return 301 https://$host$request_uri; 
      }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
  • 相关阅读:
    CSDN客诉周报第9期|本周解决11个用户问题
    python的多线程使用
    TensorFlow入门(十三、动态图Eager)
    STL list
    无人直播间
    服务器内存不足的原因
    LoadBalancer负载均衡服务调用
    bootstrap练习
    STM32 HAL库USART的接收数据方法实现
    WinUI 3 踩坑记:从创建项目到发布
  • 原文地址:https://blog.csdn.net/weixin_45634261/article/details/127573961