location /file/ {
alias E:/test/data/img/;
index index.html index.htm;
}
}
需要注意的是,在alias后指定的路径,最后一定要加 “/”,否则很有可能会因为location配置不当而出现404.
回到顶部
2.代理动态服务
所谓动态服务也就是后端的各种请求,有时直接使用匹配转发,有时需要处理后转发。
现有一个查询用户信息的接口,地址是http://127.0.0.1:8080/api/user/getById?id=123
1)需求:通过nginx转发,使用http://127.0.0.1/api/user/getById?id=123访问用户查询服务
server {
listen 80;
server_name 127.0.0.1;
location /api/ {
proxy_pass http://127.0.0.1:8080;
}
}
通过原有地址直接准发非常简单。
2)需求:通过nginx转发,使用http://127.0.0.1/test/api/user/getById?id=123访问用户查询服务
server {
listen 80;
server_name 127.0.0.1;
location /test/ {
proxy_pass http://127.0.0.1:8080/;
}
}
这里相当于对请求添加了前缀,但在转发的过程中是没有前缀的,故需要去掉。关键点就是地址后面的 “/”.
回到顶部
3.关于斜杆"/"的案例对比
以服务地址http://127.0.0.1:8080/api/user/getById进行说明,访问地址是http://127.0.0.1/api/user/getById。location后斜杆与proxy_pass后斜杆问题如下:
1)location、proxy_pass都不加斜杠
location /api {
proxy_pass http://127.0.0.1:8080;
}
实际代理地址:http://127.0.0.1:8080/api/user/getById。正确的
2)location加斜杠,proxy_pass不加斜杠
location /api/ {
proxy_pass http://127.0.0.1:8080;
}
实际代理地址:http://127.0.0.1:8080/api/user/getById。正确的
3)location不加斜杠,proxy_pass加斜杠
location /api {
proxy_pass http://127.0.0.1:8080/;
}
实际代理地址:http://127.0.0.1:8080//user/getById。错误的,也出现了双斜杠
4)location、proxy_pass都加斜杠
location /api/ {
proxy_pass http://127.0.0.1:8080/;
}
实际代理地址:http://127.0.0.1:8080/user/getById
5)location不加斜杠,proxy_pass加"api"
location /api {
proxy_pass http://127.0.0.1:8080/api;
}
实际代理地址:http://127.0.0.1:8080/api/user/getById。正确的
6)location加斜杠,proxy_pass加"api"
location /api/ {
proxy_pass http://127.0.0.1:8080/api;
}
实际代理地址:http://127.0.0.1:8080/apiuser/getById。错误的,少了一个斜杆
7)location不加斜杠,proxy_pass加"api/"
location /api {
proxy_pass http://127.0.0.1:8080/api/;
}
实际代理地址:http://127.0.0.1:8080/api//user/getById。这种情况会出现双斜杠问题,后端在认证请求时会校验失败。
8)location加斜杠,proxy_pass加"api/"
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
![img](https://img-blog.csdnimg.cn/img_convert/7fb4c7f551dd3f7aef5c2f00584ad78b.png)
![img](https://img-blog.csdnimg.cn/img_convert/533448067ca7af4a773707cb6a9bfa0e.png)
![img](https://img-blog.csdnimg.cn/img_convert/d6b0d03ad730f76b06c560e0ffa6f841.png)
![img](https://img-blog.csdnimg.cn/img_convert/87df1de47b5ace6ece09c869c8fb88e4.png)
![img](https://img-blog.csdnimg.cn/img_convert/abbb1fbe4efd8797d371a4a28dccd1e5.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)**
![img](https://img-blog.csdnimg.cn/img_convert/3a0058323f81910d2c6b351e013b546a.jpeg)
### 最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
### 资料预览
给大家整理的视频资料:
![](https://img-blog.csdnimg.cn/img_convert/b501618a4b112f5024e68cad0f0e8c6f.png)
给大家整理的电子书资料:
![](https://img-blog.csdnimg.cn/img_convert/7ed715f0261775cc05360548ed1a9512.png)
**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**
**一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
![img](https://img-blog.csdnimg.cn/img_convert/62444c1bfe703e7c5b0f65cdf2838895.jpeg)
gSB-1712852713448)]
**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**
**一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
[外链图片转存中...(img-gbdXQ67I-1712852713448)]