【无标题】

nginx配置相关知识

1 ~:区分大小写 ~*:不区分大小写
bash 复制代码
location ~ \.(gif|jpg|png|js|css)$ {区分大小写,以gif,jpg,js结尾
  #规则D
}
location ~* \.png$ {不区分大小写,匹配.png结尾的
  #规则E
}
访问 http://localhost/a.PNG 则匹配规则E, 而不会匹配规则D,因为规则E不区分大小写。
2 ^~:非精确匹配,并且不区分大小写
bash 复制代码
location ^~ /static/ {非精确匹配,并且不区分大小写,比如127.0.0.1/static/js.
  #规则C
}
访问 http://localhost/static/a.html 将匹配规则C
而 http://localhost/static/c.png 则优先匹配到 规则C而不是规则D
3 !~ .xhtml$: 区分大小写,并且匹配不以xhtml为结尾的
!~* .xhtml$: 不区分大小写,并且匹配不以xhtml为结尾的
bash 复制代码
location !~ \.xhtml$ {区分大小写,匹配不已.xhtml结尾的
  #规则F
}
4 #try_files 固定语法
bash 复制代码
 1.假设请求 127.0.0.1/home

     #变量解释
    try_files  固定语法
    $uri       指代home目录(ip地址后面的路径,假如是127.0.0.1/index/a.png,那就指代index/a.png)
    $uri/      指代home文件夹
               /index.html  向ip/index.html 地址发起请求

    try_files $uri $uri/ /index.html;
    尝试解析下列2个文件/文件夹(自动分辨出,IP后面的路径是文件还是文件夹), $uri/$uri/,
    如果解析到,返回第一个,
    如果都没有解析到,向127.0.0.1/index.html发起请求跳转(该路由必须真实,不然会报错)
5 proxy_set_header 请求头相关
bash 复制代码
location /webSocket/ {
            proxy_pass http://127.0.0.1:8000;  
            proxy_http_version 1.1;  # 确保使用 HTTP/1.1
            proxy_set_header Upgrade $http_upgrade;  
            proxy_set_header Connection "Upgrade";  
            proxy_set_header Host $host;  # 设置Host头,传递给后端服务器
            proxy_set_header X-Real-IP $remote_addr;  # 将客户端的真实IP地址传递给后端服务器
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  #  将客户端的原始IP地址传递给后端服务器
            proxy_set_header X-Forwarded-Proto $scheme;  # 转发协议
        }
相关推荐
曲幽1 天前
Flask 应用部署实战:Nginx 反向代理配置指南
python·nginx·web·gunicorn·wsgi
Joren的学习记录2 天前
【Linux运维进阶知识】Nginx负载均衡
linux·运维·nginx
华无丽言2 天前
如何解决 413 Request Entity Too Large ?
nginx
..Move...2 天前
基于Containerd搭建 K8s
运维·nginx·云原生
古城小栈2 天前
有了Nginx还需要网关吗?
运维·nginx
zeijiershuai2 天前
Vue-打包部署(Nginx)
前端·vue.js·nginx
huaweichenai2 天前
了解nginx
linux·服务器·nginx
被闲置的鱼2 天前
麒麟OS各种环境安装脚本,达梦数据库DM8、JDK安装、Nginx安装、vsftpd安装、硬盘挂载一件安装脚本
java·linux·数据库·nginx·kylin
友莘居士2 天前
HTTP正向代理 vs TCP反向代理:概念与使用场景详解
运维·服务器·nginx·反向代理
元气满满-樱3 天前
rewrite常用全局变量
nginx·web