nginx学习笔记

nginx的作用
静态的web资源服务器
http/https协议的反向代理
IMAP4/POP3协议的反向代理
TCP/UDP协议的请求转发

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。

1 nginx 五种策略
RR:每个请求按照时间顺序逐一分配到不同的后端服务器
权重:指定轮询几率,weight和访问比率成正比
iphash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题
urlhash:按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效
fair:按后端服务器的响应时间来分配请求,响应时间短的优先分配。

2 常用命令
nginx -s load
2.1 curl
curl -I -XOPTIONS www.a.com
-I:返回头部信息
-XOPTIONS:返回支持的方法

2.2 ab
ab -c 100 -n 1000 www.a.com

3 配置
user user[group]
指定 worker 进程的运行身份。如果组不指定,默认和用户名同名

worker_processes 4
	指定worker进程的数量

worker_rlimit_nofile 65535
	worker进程所能够打开的文件数量上限

events {
	worker_connections 1024 worker进程所能够打开的最大并发连接数数量
	accept_mutex on|off 处理新的连接请求的方法; on指由各个worker轮流处理新请求,off指每个新请求的到达会通知所有的worker进程。但只有一个进程可获得连接
	error_log file [level]
}

http {
	include       /etc/nginx/mime.types;
	default_type  application/octet-stream;
	server {
		listen 80;
		server_name www.test.com; //虚拟主机的主机名,后可跟多个空白字符隔离的字符串
		fastcgi_intercept_errors on;
		error_page 404 /404.html; //定义错误页,以指定的响应状态码进行响应
		location / {  //对URI做精确匹配
		  root /usr/share/nginx/html/; //设置web资源的路径映射;用于指明请求的URI所对应的文档的目录路径。
		}
	}
	tcp_nodelay on|off ;
	sendfile        on;  //默认off
	server_tokens on|off|build|string //是否在响应报文的server首部显示nginx的版本
}

3.1 http负载均衡
/etc/nginx/nginx.conf
user nginx;
worker_processes 2;

error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;

events {
worker_connections 1024;
}

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

upstream backend {
server 192.168.1.8:8081 weight=5;
server 192.168.1.8:8082 weight=5;
}

log_format main '$remote_addr - r e m o t e u s e r [ remote_user [ remoteuser[time_local] KaTeX parse error: Double superscript at position 14: status ' '̲"request" b o d y b y t e s s e n t " body_bytes_sent " bodybytessent"http_referer" ’
‘“ h t t p u s e r a g e n t " " http_user_agent" " httpuseragent""http_x_forwarded_for”’;

server {
listen 80;
server_name 192.168.1.8;
location / {
proxy_pass http://backend;
proxy_set_header Host h o s t : host: host:server_port;
}
}
}

5 参考资料
Nginx可以做什么?看完这篇你就懂了 https://blog.csdn.net/qq_36125138/article/details/84144932
LVS + nginx (keepalived)https://www.cnblogs.com/arjenlee/p/9262737.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值