目录结构
conf
用来存放配置文件相关
html
用来存放静态文件的默认目录html,css等
sbin
nginx的主程序
配置详解
第一步化繁为简,删掉所有的注释信息,得到我们的简化版
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
最小配置文件说明
worker_processes
worker_processes 1;
默认为1,表示开启一个业务进程
worker_connections
worker_connections 1024;
单个业务进程可接受连接数
include mime.types;
include mime.types;
引入http mime类型,这个不懂可以打开mine.ytpes文件看看
default_type application/octet-stream;
default_type application/octet-stream;
如果mime类型没匹配上,默认使用二进制流的方式传输。
sendfile on;
sendfile on;
使用linux的 sendfile(socket, file, len) 高效网络传输,也就是数据0拷贝。
虚拟主机配置(
重点
)
如果我们需要添加虚拟主机,需要把整个server都复制一份,不然会出问题
反向代理配置
proxy_pass
属性
负载均衡
upstream 标识符{
server 代理的url1;
server 代理的url2;
…
}
负载均衡策略默认是轮询模式,也可以增加权重weight
动静分离
为什么要做动静分离:客户端访问服务器静态资源,是通过用户发请求到nginx访问tomcat,当首页模块静态资源很多时,加载的就比较慢,这是我们就可以使用动静分离提高静态资源响应速度。
原理:静态资源我们一般放在tomcat目录下的images,js,css等目录,我们把这些资源放在nginx目录下,再在配置文件配置,这些静态资源就不用再去访问tomcat,相应的就更快。