一个简单的Nginx入门案例
1.入门案例需求
1.1功能转发
通过域名访问nginx,通过配置让该访问转发给8091的springboot工程
2.配置nginx.conf
在nginx的根目录的confi文件夹下,找到nginx.conf
http{
server{}
server{}
server{}
server{}
….
}
2.1编写一个server结构
#添加测试server案例
server {
#监听端口
listen 80;
server_name www.test.com;
location / {
proxy_pass http://localhost:8091/;
}
}
nginx作为一个http服务器,会在启动时加载nginx.conf配置文件
加载到http下的多个server的内容,每一个server会被nginx启动为一个线程实现http服务器功能--接收,发送请求
- listen :当前server在nginx服务器中监听的端口号,只要有一个server配置了这个端口号的监听,nginx将这个端口占用使用.
- server_name 通过它来判断这次请求的域名携带的是谁
server中的 listen和server_name来决定某一个请求到nginx的访问是否交给该虚拟服务器server处理,多个server不同有相同的端口同时还有相同的域名
location / 表示只要uri地址字符串是以 "/" 开头的,就匹配上了这个location.看成是个通配,因为任何uri地址都会以"/"开始
- location 用来比对当前这个请求uri地址,可以在同一个server中配置多个location比对uri的结构,满足结构的,优先级最高的location负责处理这次请求
uri地址: /a/b/c
url地址: http://www.test.com/a/b/c
location / 表示只要uri地址字符串是以 "/" 开头的,就匹配上了这个location.看成是个通配,因为任何uri地址都会以"/"开始
- proxy_pass 处理动态数据的转发
server {
#监听端口
listen 80;
server_name www.test.com;
location / {
proxy_pass http://localhost:8091/;
}
}
nginx启动后会加载这个server,server来监听80端口,到达80端口请求判断域名是否是www.test.com,满足则开始判断location ,转发到proxy_pass 8091工程
2.2功能测试
- 流程解析
起始访问地址:http://www.test.com/hello
|找hosts文件 127.0.0.1 访问到该服务器
|访问nginx服务器 监听80端口的server发现
|判断请求的域名 www.test.com
|server满足条件 进入location匹配
|请求uri 地址 =/hello 满足locaiton /匹配要求
|进入location将请求 uri拼接到proxy_pass
响应位置:http://localhost:8091/hello
-
-
- 保证8091启动
- 保证www.test.com能够访问到nginx 配置hosts文件
-
本文地址:https://blog.csdn.net/qq_32224047/article/details/107496725