nginx的域名重写和转发案例
对url进行重写
location = /tongyong_OTA_1.0.3.bin {
rewrite ^(.*)$ http://36.133.87.223/lecode-server/lecode-dap-server/api/open/server/ota/tongyong_OTA_1.0.3.bin permanent;
}
location /lecode-server/ {
proxy_pass http://10.1.177.167:8080/;
}
}
先对url进行重写,在转发,因为是代理。真实服务端不在本地。
如果是https协议。就把重写和转发规则写在https协议下
location中的rewirte:
不写last和break - 那么流程就是依次执行这些rewrite
1. rewrite break
url重写后,直接使用当前资源,不再执行location里余下的语句,完成本次请求,地址栏url不变
2. rewrite last
url重写后,马上发起一个新的请求,再次进入server块,重试location匹配,超过10次匹配不到报500错误,地址栏url不变
3. rewrite redirect
返回302临时重定向,地址栏显示重定向后的url,爬虫不会更新url(因为是临时)
4. rewrite permanent
返回301永久重定向, 地址栏显示重定向后的url,爬虫更新ur
上面是对URL重写,下面是对URL代理,两种方法
location ~* \.(bin)$ { proxy_pass http://10.1.177.167:8080/lecode-dap-server/api/open/server/ota/$request_uri; } #location /lecode-server/ { # proxy_pass http://10.1.177.167:8080/; #} 这里只需要一个location,注意重定向后的URL不要带/lecode-server/ ,因为这是代理的地址。后面才是转发后的URL。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?