文档章节

Nginx 手记(八)代理服务

神奇Sam
 神奇Sam
发布于 2017/08/30 14:46
字数 436
阅读 725
收藏 0
点赞 0
评论 0

简单理解

  • 正向代理:代理的对象是客户端,服务端不能得知客户端是真实ip,常用于翻墙。
  • 反向代理:代理的对象是服务端,客户端不能得知真正提供服务的服务端ip,用于隐藏服务端、负载均衡等。

配置语法


#代理配置
语法:  proxy_pass URL;
默认值:无
上下文:location,if in location,limit_except

#代理缓冲区
#打开缓冲区后,nginx会尽有可能把一个请求的所有信息收集完,然后返回客户端。
#缓存内容先存放在内存中,超出会存入硬盘中。
#好处:减少io损耗。
语法:proxy_buffering on|off;
默认值:proxy_buffering on
上下文:http,server,location

#跳转重定向
语法:proxy_redirect default|off|redirect replacement;
默认值:proxy_redirect default;
上下文:http,server,location

#头信息
#nginx作为代理服务器的时候,通过设置头信息,想后端传递该信息。
语法:  proxy_set_header field value;
默认值:proxy_set_header Host $proxy_host;
        proxy_set_header Connection close;
上下文:http,server,location

扩展:proxy_hide_header、proxy_set_body

#连接超时
语法:  proxy_connect_timeout time;
默认值:proxy_connect_timeout 60;
上下文:http,server,location

扩展:proxy_read_timeout、proxy_send_timeout


#简单配置
location / {
    #代理地址
    proxy_pass  http://127.0.0.1:8080;
    #
}

一、配置正向代理

在server中配置一下location
server {
    #正向代理的端口
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;
    
    #配置DNS服务,这里配置google的dns
    resolver 8.8.8.8;
    location / {
        proxy_pass http://$http_host$request_uri;
        proxy_redirect default; #一般配置默认即可
        
        #添加头信息
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        
        #配置超时
        proxy_connect_timeout 30;
        proxy_send_timeout 60;
        proxy_read_timeout 60;
        
        #配置缓冲区,
        proxy_buffer_size 32k;
        proxy_buffering on;
        proxy_buffers 4 128k;
        proxy_busy_buffers_size 256k;
        proxy_max_temp_file_size 256k;
        
    }
    
}
在客户端配置代理
这里推荐使用chrome浏览器中的SwitchySharp插件进行代理配置并测试。

© 著作权归作者所有

共有 人打赏支持
神奇Sam
粉丝 19
博文 41
码字总数 27998
作品 0
广州
程序员
Linux学习手记

生成SSL证书 openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr 开源免费SSL证书:https://letsencrypt.org/ http://www.vpser.net/build/letsencrypt-certbot......

flydo
2015/12/16
165
0
nginx~linux下的部署

一些概念 Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发...

mcy247
2017/12/06
0
0
Nginx server之Nginx作为web服务器(基于域名或IP的web服务器)

一:nginx简介 Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开...

fighting-cluber
2014/03/11
0
0
ubuntu下nginx安装手记

Nginx是一个高性能的HTTP和反向代理服务器. Nginx 使用 Unix 下常用的 './configure && make && make install' 过程来编译安装. configure 脚本确定系统所具有一些特性,特别是 nginx 用来处...

mfcai
2013/01/03
0
0
Multi-Stage Build多阶段Build Docker镜像

我们在上一篇手记 中给大家介绍了如何完全使用Docker搭建Angular开发和测试环境,今天我们接着这个话题给大家看看如果通过Docker部署Angular项目。 我们先看看假如没有Docker,我们一般怎么去...

麦兜搞IT
05/29
0
0
《Python自动化运维开发实战》课程配套手记内容列表

自动化实战课程的手记内容手记列表 各位同学,《Python自动化运维开发实战》实战课中的配套手记内容列表如下,供大家参考学习,已经出的手记将参考大家的实际情况进行补充,其他的配套课程整...

幕客技术
01/12
0
0
Ngnix 负载均衡环境搭建

一、NGINX简介 二、NGINX的安装及配置 三、NGINX的配置与优化 四、NGINX与JSP的安装、配置与优化 五、Nginx HTTP负载均衡和反向代理的配置与优化 六、Nginx的Rewrite规则与实例 七、NGINX的非...

孟飞阳
2016/08/07
38
0
Debian 安装odoo11.0手记

使用通常的 apt 升级命令使您的安装保持最新。 安装nodejs sudo -E bash - apt-get install -y nodejs 一旦npm安装,使用它来安装less 安装wkhtmltopdf 添加 odoo11.0存储库,安装odoo 安装n...

楚地湘汉
2017/10/25
0
0
Varnish调优手记

最近公司做活动推广,流量暴增,后端服务器压力山大,导致用户的请求响应时间延长,客户因此抱怨声音很大。   为尽快解决问题,在安排人员不断优化后端代码的同时,考虑在nginx前增加varni...

nmshuishui
2014/05/07
0
0
Nginx 常见应用技术指南[Nginx Tips] 第二版

原文链接:http://bbs.linuxtone.org/thread-1685-1-1.htmlIT运维专家网--"自由平等,互助分享!" 作者:NetSeek http://www.linuxtone.org(IT运维专家网|集群架构|性能调优) 欢迎转载,转载时...

刘赤龙
2010/06/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

vue基础知识练习

一、Hello World <div id="itany">{{msg}} <!-- 两对大括号{{}}称为模板,用来进行数据的绑定显示在页面中 --> </div><script src="js/vue.js"></script><script>var vm=new Vue({......

一个yuanbeth
5分钟前
0
0
spring @Transactional注解参数详解

原文:事物注解方式: @Transactional 当标于类前时, 标示类中所有方法都进行事物处理 , 例子: 1 @Transactional public class TestServiceBean implements TestService {} 当类中某些方法不需...

binhu
8分钟前
0
0
CORS 跨域实践

本文首发于个人微信公众号《andyqian》,期待你的关注~ 前言 系统通常都是由单体应用逐渐演化而来,演化成为前后端分离的分布式应用。在享受分布式系统带来的诸多好处之时,随之而来的也有不...

andyqian
15分钟前
7
0
开源 java CMS - FreeCMS2.8 会员管理

项目地址:http://www.freeteam.cn/ 会员组管理 会员管理 会员管理 从左侧管理菜单点击会员管理进入。 添加会员 在会员列表下方点击“添加”按钮。 填写相关属性后点击“保存”按钮即可。 编...

freeteam
16分钟前
0
0
bboss升级至 v5.0.6.8版本,改善对Elasticsearch SQL 的支持

v5.0.6.8功能改进如下: (1)持久层支持支持Elasticsearch SQL,使用参考文档:玩转Elasticsearch SQL功能 (2)解决持久层/elasticsearch模板变量解析多层级不起作用问题 (3)完善国际化功能 (4...

linux-tao
17分钟前
0
0
扫码二维码跳转到某个网站

添加maven依赖 <dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.0.0</version></dependency><dependency><groupId>com.goog......

gaomq
24分钟前
0
0
Windows平台下搭建Git服务器的图文教程

Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在windows下的开发要把自己...

MKChan
30分钟前
0
0
告警系统主脚本&告警系统配置文件&告警系统监控项目

20.20 告警系统主脚本 准备工作 定义监控系统的各个目录,然后再去定义主脚本,因为是分布式的,所以需要每一台机器都需要定义,事先创建好各个脚本和各个目录,随后脚本直接拷贝过去即可,然...

影夜Linux
30分钟前
0
0
谈谈神秘的ES6——(一)初识ECMAScript

谈谈神秘的ES6——(一)初识ECMAScript 在《零基础入门JavaScript》我们就说过,ECMAScript是JavaScript的核心,是JavaScript语法和语义的解释器,同时也是一个标准。而ECMAScript标准其实也...

JandenMa
今天
1
0
第16章 Tomcat配置

16.1 Tomcat介绍 ####Tomcat介绍 LNMP架构针对的开发语言是PHP语言,php 是一门开发web程序非常流行的语言,早些年流行的是asp,在Windows平台上运行的一种编程语言,但安全性差,就网站开发...

Linux学习笔记
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部