Nginx 正向代理和反向代理的配置实现

 更新时间:2023年06月12日 09:55:53   作者:激流丶  
Nginx通过优秀的架构设计和高效的算法实现了高性能和高可靠性,本文主要介绍了Nginx 正向代理和反向代理的配置实现,具有一定的参考价值,感兴趣的可以了解一下

1、为什么 Nginx 性能这么高

Nginx性能高的原因有以下几点:

Nginx是一个轻量级的Web服务器,它使用少量的系统资源来处理大量的并发连接请求。

Nginx采用了事件驱动模型,它使用异步非阻塞的方式处理请求,可以更好地利用系统资源。

Nginx具有高度的可扩展性和灵活性,可以通过添加模块来扩展其功能。

Nginx具有出色的负载均衡和反向代理功能,可以将请求分配到多个服务器上,从而提高性能和可靠性。

总之,Nginx通过优秀的架构设计和高效的算法实现了高性能和高可靠性,成为了Web服务器领域的佼佼者。

2、Nginx 正向代理和反向代理

Nginx既可以作为正向代理,也可以作为反向代理。正向代理和反向代理的区别在于代理的对象不同。

正向代理:客户端向代理服务器发送请求,代理服务器再向目标服务器发送请求,目标服务器返回响应给代理服务器,代理服务器再将响应返回给客户端。这时,客户端并不知道请求的目标服务器是哪个,只知道代理服务器的地址。

反向代理:客户端向目标服务器发送请求,但实际上请求被发送到了反向代理服务器上,反向代理服务器会根据配置的规则将请求转发给后端的目标服务器进行处理,再将处理结果返回给客户端。这时,客户端并不知道请求的目标服务器是哪个,只知道反向代理服务器的地址。

Nginx可以通过配置文件的方式实现正向代理和反向代理的功能。在配置文件中,通过proxy_pass指令指定代理服务器的地址和端口号,即可实现代理的功能。

3、Nginx 正向代理的配置

nginx.conf 配置正向代理:

http {
    # 定义正向代理服务器的地址和端口号
    upstream proxy_server {
        server 192.168.1.1:8080;
    }
     # 定义代理服务器的缓存
    proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=cache:10m inactive=60m;
     # 定义代理服务器的缓存时间
    proxy_cache_valid 200 60m;
     # 定义代理服务器的缓存大小
    proxy_cache_size 10m;
     # 定义代理服务器的缓存类型
    proxy_cache_key "$scheme$request_method$host$request_uri";
     # 定义代理服务器的缓存控制
    proxy_cache_bypass $http_pragma;
    proxy_cache_revalidate on;
    proxy_cache_min_uses 1;
     # 定义代理服务器的超时时间
    proxy_connect_timeout 30s;
    proxy_send_timeout 60s;
    proxy_read_timeout 60s;
     # 定义代理服务器的请求头
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     # 定义代理服务器的响应头
    proxy_hide_header X-Powered-By;
    proxy_hide_header Server;
     # 定义代理服务器的缓存控制头
    add_header Cache-Control "public, max-age=60, s-maxage=60";
     # 定义代理服务器的缓存控制头
    proxy_cache_lock on;
     # 定义代理服务器的缓存控制头
    proxy_cache_methods GET HEAD POST;
}
server {
    listen 80;
    server_name example.com;
     # 定义代理服务器的地址和端口号
    location / {
        proxy_pass http://proxy_server;
        proxy_cache cache;
        proxy_cache_key "$scheme$request_method$host$request_uri";
        proxy_cache_valid 200 60m;
        proxy_cache_bypass $http_pragma;
        proxy_cache_revalidate on;
        proxy_cache_min_uses 1;
    }
}

4、Nginx 配置反向代理

nginx.conf 配置反向代理:

http {
    # 定义后端服务器的地址和端口号
    upstream backend_server {
        server 192.168.1.1:8080;
    }
}
server {
    listen 80;
    server_name example.com;
    # 定义反向代理规则,将请求转发到后端服务器
    location / {
        proxy_pass http://backend_server;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

到此这篇关于Nginx 正向代理和反向代理的配置实现的文章就介绍到这了,更多相关Nginx 正向代理和反向代理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Nginx可视化配置工具NginxWebUI的使用

    Nginx可视化配置工具NginxWebUI的使用

    本文主要介绍了Nginx可视化配置工具NginxWebUI的使用,可以使用 WebUI 配置 Nginx 的各项功能,包括端口转发,反向代理,ssl 证书配置,负载均衡等,感兴趣的可以了解一下
    2022-01-01
  • 使用 Nginx 部署静态页面的方法

    使用 Nginx 部署静态页面的方法

    本篇文章主要介绍了使用 Nginx 部署静态页面的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • 在Nginx服务器上屏蔽IP的一些基本配置方法分享

    在Nginx服务器上屏蔽IP的一些基本配置方法分享

    这篇文章主要介绍了在Nginx服务器上屏蔽IP的一些基本配置方法分享,包括对过多访问的IP配置脚本屏蔽等一些小技巧,的朋友可以参考下
    2015-12-12
  • Fastdfs与nginx进行压缩图片比率

    Fastdfs与nginx进行压缩图片比率

    前阵子,工作搞了一下Fastdfs与nginx进行压缩图片比率存储在服务器中,今天应用下工作时间记录下.
    2014-07-07
  • Kubernetes中Nginx服务启动失败排查流程分析(Error: ImagePullBackOff)

    Kubernetes中Nginx服务启动失败排查流程分析(Error: ImagePullBackOff)

    这篇文章主要介绍了Kubernetes中Nginx服务启动失败排查流程(Error: ImagePullBackOff),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • 总结高并发下Nginx性能如何优化

    总结高并发下Nginx性能如何优化

    这篇文章主要为大家介绍了在高并发下Nginx性能如何优化的总结分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-10-10
  • Nginx状态监控以及日志分析详解

    Nginx状态监控以及日志分析详解

    这篇文章主要给大家介绍了关于Nginx状态监控以及日志分析的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Nginx具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • 国外著名论坛程序IPB(Invision Power Board)在nginx下的配置示例

    国外著名论坛程序IPB(Invision Power Board)在nginx下的配置示例

    这篇文章主要介绍了国外著名论坛程序IPB(Invision Power Board)在nginx下的配置示例,使用fastcgi配置模式,需要的朋友可以参考下
    2014-07-07
  • 解读nginx负载均衡的5种策略

    解读nginx负载均衡的5种策略

    这篇文章主要介绍了解读nginx负载均衡的5种策略,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • nginx限制ip访问频率的实现示例

    nginx限制ip访问频率的实现示例

    Nginx通过limit_conn_zone 和 limit_req_zone对同一个IP地址进行限速限流,本文主要介绍了nginx限制ip访问频率的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07

最新评论