nginx
Nginx
server_name匹配规则:
查看http请求头里的url地址,因为多个url可以解析为同一个ip。
先精准,后头通配符,再尾通配符,最后正则
- 通配符:
*.mmban.com
,www.mmban.*
,感觉很少会用尾通配符。 - 正则匹配:
server_name ~^[0-9]+\.mmban\.com$;
,~
表示后面解析为正则,^
表示开头$
表示结尾
- 通配符:
没有匹配到则匹配第一个server。
这点非常关键,见下面的例子:
server { listen 80; server_name localhost; }
server { listen 80; server_name localhost; location / { root /root/data #此处禁止访问,会返回403 } } server { listen 80; server_name localhost; #两条相同的规则,nginx会弹warning,不用管他 }1
2
3
4
5
localhost:返回index
yhzd.xyz:返回indexserver { listen 80; server_name localhost; location / { root /root/data #此处禁止访问,会返回403 } } server { listen 80; server_name yhzd.xyz; }1
2
3
4
5
localhost:返回403
yhzd.xyz:返回403localhost:返回403
yhzd.xyz:返回index
域名解析
泛域名解析:使用通配符的域名解析:*.mmban.com
解析为一个ip
全局配置:
- worker_processes:worker进程的数量,一般不超过cpu内核数量
- events:
- worker_connections:每一个worker进程最大的连接数量
http配置:
- include:将其他文件包含进来,意思是直接将include的文件全部复制进来,替换掉这条include语句
- mime.types:该文件定义了如何向用户的浏览器传递发送数据的数据类型,对方浏览器根据类型做出反应,例如是应用类型的弹出下载框,视频类型的在网页中展示等等。
.mp4
发送为video/mp4
.exe
发送数据类型为application/octet-stream
(八比特流)
- mime.types:该文件定义了如何向用户的浏览器传递发送数据的数据类型,对方浏览器根据类型做出反应,例如是应用类型的弹出下载框,视频类型的在网页中展示等等。
- default_type:没有在mime.types中包含的类型,统一定义为的默认类型,默认是
application/octet-stream
- sendfile:发送文件的方式,为off时不读取到内存中再调用网络接口,而直接通过网络接口从磁盘中读取文件,减少一次磁盘到内存的拷贝。
- server虚拟主机
location配置:
匹配规则:
匹配URL中域名后面的部分,例如https://www.bilibili.com/video/BV1yS4y1N76R/
中匹配/video/BV1yS4y1N76R/
1.
root参数:
- 相对路径:例如
root html
,不以/
开头解析为相对路径,相对于nginx的安装目录,解析为:/usr/share/nginx/html
- 绝对路径:例如
root /usr/share/html
,以/
开头解析为绝对路径
index参数:
一份简单够用的 Nginx Location 配置讲解 - 掘金 (juejin.cn)
不能使用root下的目录作为网络服务的根目录,会报错403访问拒绝,因为没有权限
是否带反斜杠:
nginx root 带斜杠与不带斜杠 nginx location 反斜杠_mob6454cc68310b的技术博客_51CTO博客
nginx中斜杠(‘/‘)总结_nginx location 斜杠-CSDN博客
默认路径:
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick Start
Create a new post
1 | $ hexo new "My New Post" |
More info: Writing
Run server
1 | $ hexo server |
More info: Server
Generate static files
1 | $ hexo generate |
More info: Generating
Deploy to remote sites
1 | $ hexo deploy |
More info: Deployment