官方测试nginx能够支支撑5万并发链接
1、http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
2、虚拟主机。可以实现在一台服务器虚拟出多个网站。
3、反向代理,负载均衡。
优点
可以不暴露真实服务器IP地址
PS--栗子
配置静态访问(例如images, html page。nginx可以通过不同的配置,根据request请求,从本地的目录提供不同的文件返回给客户端)
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;
}
}
反向代理
server {
listen 80;
server_name 8080.itmayiedu.com;
location / {
proxy_pass http://127.0.0.1:8080;
index index.html index.htm;
}
}
server {
listen 80;
server_name b8081.itmayiedu.com;
location / {
proxy_pass http://127.0.0.1:8081;
index index.html index.htm;
}
}
负载均衡
1)轮询
upstream backserver{
server 192.168.0.14;
server 192.168.0.15;
}
2)指定权重
upstream backserver {
server 192.168.0.14 weight=10;
server 192.168.0.15 weight=10;
}
设置超时时间,宕机轮询配置
server {
listen 80;
server_name www.itmayiedu.com;
location / {
proxy_pass http://backserver;
index index.html index.htm;
proxy_connect_timeout 1;
proxy_send_timeout 1;
proxy_read_timeout 1;
}
}
nginx 解决跨域问题---做一个网关
server {
listen 80;
server_name www.itmayiedu.com;
location /A {
proxy_pass http://a.a.com:81/A;
index index.html index.htm;
}
location /B {
proxy_pass http://b.b.com:81/B;
index index.html index.htm;
}
}
防盗链
location ~ .*\.(jpg|jpeg|JPG|png|gif|icon)$ {
valid_referers blocked http://www.itmayiedu.com www.itmayiedu.com;
if ($invalid_referer) {
return 403;
}
}
利用nginx 限制请求速度 防止DDOS
limit_req_zone $binary_remote_addr zone=one:10m rate=30r/m;
server {
...
location /login.html {
limit_req zone=one;
...
}
}