nginx做代理 转发前端请求到后端

打印 上一主题 下一主题

主题 545|帖子 545|积分 1635

       Nginx 作为反向代理服务器可以很好地处置处罚代理转发的请求,它能够将客户端的请求转发到后端服务器,并将后端服务器的响应返回给客户端(制止直接向后端发送请求,隐藏后端服务器地址)。下面先容如何配置 Nginx 进行代理转发,进行根本配置。
       用docker构建nginx镜像时的配置文件举例,在对应的配置文件的代码块添加/api
http
  1. server {
  2.         listen 80;  # 监听端口
  3.         server_name your-domain.com;  # 服务器域名或IP
  4.         location /api {
  5.             proxy_pass http://backend-server:8080;  # 代理转发地址
  6.             proxy_set_header Host $host;  # 转发头部,保留原始主机名
  7.             proxy_set_header X-Real-IP $remote_addr;  # 转发客户端真实IP
  8.             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  # 转发原始 IP 地址
  9.             proxy_set_header X-Forwarded-Proto $scheme;  # 转发协议(HTTP/HTTPS)
  10.         }
  11.         location / {
  12.             # 处理其它请求(如静态文件等)
  13.             root /var/www/html;  # 指定根文件夹
  14.             index index.html index.htm;
  15.         }
  16.     }
复制代码
https 
  1. server {
  2.     listen 443 ssl;  # 监听 HTTPS
  3.     server_name your-domain.com;
  4.     ssl_certificate /etc/ssl/certs/your-certificate.crt;  # SSL 证书路径
  5.     ssl_certificate_key /etc/ssl/private/your-private-key.key;  # SSL 私钥路径
  6.     location /api {
  7.         proxy_pass http://backend;  # 代理转发地址
  8.         proxy_set_header Host $host;
  9.         proxy_set_header X-Real-IP $remote_addr;
  10.         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  11.         proxy_set_header X-Forwarded-Proto $scheme;
  12.     }
  13. }
复制代码


  • proxy_pass:指定请求转发的目标地址,可以是 URL 或者上游主机组。
  • proxy_set_header:设置转发头,通常用来通报客户端的真实 IP 和协议等信息。
  • upstream:定义一个上游服务器组,在负载平衡的情况下利用。
为了更好地监控和调试过程,可以在 Nginx 配置中添加访问和错误日志:
  1. http {
  2.     access_log /var/log/nginx/access.log;  # 访问日志路径
  3.     error_log /var/log/nginx/error.log;    # 错误日志路径
  4. }
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

李优秀

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表