正向代理
正向代理:代理的是浏览器,例如翻墙服务等
#curl http://www.baidu.com/ -x http://www.siguoya.name:3333/
server {
listen 3333;
server_name www.siguoya.name;
location / {
proxy_pass http://$http_host$request_uri;
#如果在代理配置中,我们使用域名而不是IP来表示真实的服务器,则一定要通过resolver指令指定一个dns服务器才行
resolver 114.114.114.114;
}
}
反向代理
反向代理:代理的是服务器,例如隐藏服务器的真实地址,通过80端口访问非公开的端口等
location /some/path/ {
proxy_pass http://www.example.com/link/;
}
参考文档:
相关指令
指令 | 说明 |
---|---|
proxy_buffering | 类似于tcp_nopush,可以提高网络传输的效率 |
proxy_redirect | 设置代理重定向 |
proxy_set_header | 设置代理头信息 |
proxy_hide_header | 隐藏代理头信息 |
proxy_set_body | 设置代理请求的数据 |
proxy_connect_timeout | 设置代理连接超时 |
proxy_read_timeout | 设置代理获取响应的超时 |
proxy_send_timeout | 设置代理发出请求的超时 |
proxy_cookie_domain | 设置cookie的域名范围 |
常用配置示例
location / {
proxy_pass http://www.baidu.com/;
proxy_redirect default;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_connect_timeout 30;
proxy_read_timeout 60;
proxy_send_timeout 60;
proxy_buffer_size 32k;
proxy_buffering on;
proxy_buffers 4 128k;
proxy_busy_buffers_size 256k;
proxy_max_temp_file_size 256k;
}
对于通用的配置块,例如http与https的相同区块,我们可以分离到一个单独的文件,然后通过incude来进行载入
正向代理与反向代理的区别就在于代理的对象是不一样的。
专题阅读
- 1. Nginx的优点
- 2. Nginx的安装与开机自启
- 3. Nginx目录和配置语法
- 4. Nginx模块
- 5. Nginx静态资源处理
- 6. Nginx浏览器缓存原理
- 7. Nginx资源的跨域访问
- 8. Nginx资源的防盗链
- 9. Nginx代理
- 10. Nginx负载均衡
- 11. Nginx缓存
- 12. Nginx动静分离
- 13. Nginx Rewrite
- 14. Nginx Secure Link
- 15. Nginx Geo
- 16. Nginx HTTPS服务
- 17. Nginx与Lua开发
- 18. Nginx与Lua灰度发布
- 19. Nginx常见错误
- 20. Nginx性能优化
- 21. Nginx安全管理
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。