1、nginx安装参考教材
2、nginx配置
配置格式大致为如下:
events:配置影响 nginx 服务器与客户端的网络连接,包括进程最大连接数,数据驱动模型,序列化等
http:配置代理,缓存,日志,第三方模块等,可嵌套多个 server
server:配置虚拟主机的参数
location:配置请求路由,页面处理
#全局配置
...
#events 配置
events {
...
}
#http 配置
http{
#http 全局配置 ...
#server 全局配置
server {
#server全局配置 ...
#location配置
location [PATTERN] {
...
}
}
}
以自己项目服务器的nginx配置为例:
events
worker_connections 默认连接数
http
include /usr/local/**/nginx/includes/*.conf; #引入其他路径配置文件
default_type application/octet-stream; #核心模块指令,默认为二进制流
sendfile on; #开启高效传输文件模式
tcp_nopush on; #开启防止网络堵塞
keepalive_timeout 120s; #设置客户端连接保存活动的超时时间
client_header_buffer_size 32k; #设置请求头header最大大小
client_max_body_size 200m; #设置请求体body最大大小
proxy_connect_timeout 300; # 后端/上游服务器建立连接的超时时间
proxy_send_timeout 300; # 设置往后端/上游服务器发送请求的超时时间
proxy_read_timeout 300; # 设置从后端/上游服务器读取响应的超时时间
# 如果要解析php脚本语言,就必须通过配置fastcgi模块来提供对php支持
fastcgi_connect_timeout 300; # nginx与后端fastcgi server连接超时时间
fastcgi_send_timeout 300; #指定nginx向后端传送请求超时时间
fastcgi_read_timeout 300; #指定nginx接受后端fastcgi响应请求超时时间
fastcgi_buffer_size 64k; #指定nginx读取fastcgi响应第一部分需要用多大的缓冲区
fastcgi_buffers 4 64k; #指nginx需要用多大的缓冲区缓冲fastcgi的应答请求
fastcgi_busy_buffers_size 128k; #整个数据请求需要多大的缓存区,建议设置为fastcgi_buffers值的两倍
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on; #是否传递4xx或5xx到客户端
gzip on; #开启gzip
gzip_min_length 1k; #低于1kb的资源不压缩
gzip_buffers 16 8k; #压缩缓冲区,大小为16个8k
gzip_http_version 1.1; #http通信协议版本号
gzip_comp_level 5; #压缩级别1-9,越大压缩率越高
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml; #压缩类型,表示哪些网页文档启用压缩功能
gzip_vary on; #支持前端缓存服务器存储压缩页面
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\."; #配置禁用gzip条件,支持正则。此处表示ie6及以下不启用gzip(因为ie低版本不支持)
server
server
{
listen 80; # 监听端口
server_name 127.0.0.1; # 监听地址,可以是ip,最好是域名
#请求的url过滤
location / {
root /data/**/dist/; #根目录
index index.html index.htm; #设置默认页
}
location /supervise {
proxy_pass http://100.89.8.39:8503/supervise;
}
}
关于location指定的过滤路径,如果 proxy_pass 配置的url未带有路径(/ ,/**),则会拼接到该url后;反之则不会