Nginx配置与负载均衡实现

什么是Nginx?

Nginx (engine x) 是一个高性能的HTTP反向代理web服务器。特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。

能够支持高达 50,000 个并发连接数的响应。Nginx代码完全用C语言从头写成,可以移植到很多操作系统:LinuxMac OSMicrosoft Windows等。

Nginx配置详解与负载均衡

#概述;一共分为三大部分

############################第一部分 全局配置##########################

#user nobody;指定启动进程的用户,默认不用指定即可

#error_log logs/error.log;配置日志输出,虽然叫error_log但是可以定义输出的级别,默认不写是error级别

#error_log logs/error.log notice;

#error_log logs/error.log info;

#pid logs/nginx.pid;记录pid的文件,默认放到这个位置

# 只启动一个进程,nginx是多进程单线程模型

worker_processes 1;

############################第二部分 event配置##########################

#主要是网络连接相关的配置

events {

# 每个worker能连接1024个链接

worker_connections 1024;

# epoll; 事件驱动模型,多路IO复用

}

############################第三部分 http配置##########################

http {

include mime.types;

default_type application/octet-stream;#text/html 默认的返回类型,也可以再server.location修改

sendfile on;#开启sendfile系统调用

keepalive_timeout 65;#连接超时时间是65s

upstream peter {

#服务器资源

server 10.73.25.10:8080 weight=1

server 10.73.25.11:8080 weight=1

}

#upstream peter {

##服务器资源

#server 127.0.0.1:8080 weight=2

#server 127.0.0.1:8081 weight=1

#}

#upstream peter {

##服务器资源

#server 127.0.0.1:8080 weight=3

#server 127.0.0.1:8081 weight=1

#}

server {

listen 80;

server_name localhost;

location /demo0 {

root html;

index index.html index.htm;

proxy_pass http://peter;

}

# 下面展示多个demo,demo之间互相没有依赖,可以单独配置进行测试

################## demo1 展示location路径的不同写法优先级 ##########################

# = 最高优先级,表示路径完全等于,可以匹配demo1/a/b的请求

location /demo1/a/b {

return "/demo1/a/b"

}

# ^~ 第二高,表startWith,可以匹配demo1/abbb demo1/a/bbbb的请求

location /demo1/a {

return "/demo1/a"

}

# ~ 第三高,表示正则,注意加双引号

location "/demo1/\w{3}$" {

return "regex"

}

# 最低优先级,没有任何前置符号

location /demo1 {

return "/demo1"

}

################## demo2 展示rewrite跳转 ##########################

location /demo2 {

rewrite ^/(.*) /$1/api permanent # permanent 301, redirect 302

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

# HTTPS server

#

#server {

# listen 443 ssl;

# server_name localhost;

# ssl_certificate cert.pem;

# ssl_certificate_key cert.key;

# ssl_session_cache shared:SSL:1m;

# ssl_session_timeout 5m;

# ssl_ciphers HIGH:!aNULL:!MD5;

# ssl_prefer_server_ciphers on;

# location / {

# root html;

# index index.html index.htm;

# }

#}

}

猜你喜欢

转载自blog.csdn.net/A_captain_608/article/details/129713140