本文共 2980 字,大约阅读时间需要 9 分钟。
参考:
一: 关于正向代理和反向代理: 很形象,好玩哈哈
正向代理中,proxy和client同属一个LAN(局域网),对server透明;
反向代理中,proxy和server同属一个LAN,对client透明。 实际上proxy在两种代理中做的事都是代为收发请求和响应,不过从结构上来看正好左右互换了下,所以把后出现的那种代理方式叫成了反向代理。正向代理的用途:
(1)访问原来无法访问的资源,如google
(2) 可以做缓存,加速访问资源
(3)对客户端访问授权,上网进行认证
(4)代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息
反向代理的作用:
(1)保证内网的安全,可以使用反向代理提供WAF功能,阻止web攻击.
(2)负载均衡,通过反向代理服务器来优化网站的负载.
nginx配置: 遇到之后在多补充
user www www; #指定Nginx Worker进程运行用户以及用户组 可不设置 这样用户都可以启动nginx服务 worker_processes 2; #指定了Nginx要开启的进程数,多核CPU指定和核数一样多的进程数 pid logs/nginx.pid; #指定进程id的存储文件位置 worker_rlimit_nofile 65535; #指定单进程打开文件数,需与系统设定一致 events { use epoll; #指定nginx工作模式,nginx主要的工作模式有select、poll、kqueue、epoll #其中select、poll是标准工作模式,kqueue、epoll为高效工作模式,epoll用在Linux系统中,而kqueue用在#BSD系统中 worker_connections 65535;#指定单进程的最大连接数 } HTTP部分 http { include mime.types; #指定配置文件所包含的文件 default_type application/octet-stream; #指定默认类型为二进制流,也就是当文件类型未定义时使用这种方式,例如在没有配置PHP环境时,Nginx是不予#解析的,此时,用浏览器访问PHP文件就会出现下载窗口 log_format main '$remote_addr - $remote_user [$time_local] "$request" '#设定日志格式 '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';; client_max_body_size 20m; #设置允许客户端请求的最大的单个文件字节数 client_header_buffer_size 16k;#指定来自客户端请求头的headerbuffer大小,如果自定义了消息头或有更大的cookie,可以在这里增加缓冲大小 large_client_header_buffers 4 32k;#指定客户端请求中较大的消息头的缓存最大数量和大小,4为个数,32k为大小,最大缓存为4个32kb sendfile on;#开启高效传输模式 tcp_nopush on; # tcp_nopush,tcp_nodelay设置on,防止网络阻塞 tcp_nodelay on; keepalive_timeout 65; #指定客户端连接保持活动的超时时间 client_header_timeout 10;#说明 指定等待client发送一个请求头的超时时间(例如:GET / HTTP/1.1).仅当在一次read中,没有收到请求头,才会算成超时。如果在超时时间内,client没发送任何东西,nginx返回HTTP状态码408(“Request timed out”) 是从什么时候开始等??? client_body_timeout 10;#说明 该指令设置请求体(request body)的读超时时间。仅当在一次readstep中,没有得到请求体,就会设为超时。超时后,nginx返回HTTP状态码408(“Request timed out”) send_timeout 10;#指定客户端的响应超时时间。这个设置不会用于整个转发器,而是在两次客户端读取操作之间。如果在这段时间内,客户端没有读取任何数据,nginx就会关闭连接。 gzip on; #开启gzip压缩,实时压缩输出数据流 gzip_min_length 1k; #设置允许压缩的页面最小字节数 gzip_buffers 4 16k; #指定内存空间来存贮压缩结果,这里指定4个单位为16k的内存来存储压缩结果,即总大小为64k gzip_http_version 1.1;#指定识别HTTP协议版本,默认是1.1 gzip_comp_level 2;#指定gzip压缩比,1 压缩比最小,处理速度最快;9 压缩比最大,传输速度快,但处理最慢,也比较消耗CPU资源 gzip_types text/plain application/x-javascript text/css application/xml;#指定压缩的类型,无论是否指定,“text/html”类型总是会被压缩 gzip_vary on;#该选项开启可以让前端的缓存服务器缓存经过gzip压缩的页面,例如,用Varnish缓存经过Nginx压缩的数据 server_tokens off;#隐藏Nginx版本号 server { listen 8000; #指定Nginx监端口 server_name localhost;#用来指定IP或者域名 charset utf-8;#指定Nginx默认的字符集,只有utf-8支持中文字符 access_log logs/host.access.log main;#指定访问日志的名称及位置 location / { index index.html index.htm;#设定默认首页 root /tom/webapps/ROOT;#指定网页根目录 } location ~ (jsp|\?) { #指定url中包含jsp或者?的全部转发到192.168.0.10的80端口即tomcat处理 proxy_pass http://192.168.0.10:80; }
转载地址:http://qneyn.baihongyu.com/