博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Nginx反向代理和负载均衡部署指南
阅读量:5742 次
发布时间:2019-06-18

本文共 1636 字,大约阅读时间需要 5 分钟。

1.        安装

1)         从Nginx官网下载页面()下载Nginx最新版本(目前是1.5.13版本)安装包;

2)         解压后复制到部署目录。

 

2.        启动和停止Nginx

Nginx目前只支持命令行操作,操作前先进入Dos命令环境,并进入Nginx部署目录。

1)         启动Nginx:start nginx

2)         停止Nginx:nginx -s stop

3)         修改配置后重启:nginx -s reload

这三个命令可分别做成bat文件,放在部署目录下,方便后续操作。

start nginx.bat文件内容:start nginx

stop nginx.bat文件内容:nginx -s stop

reload nginx.bat文件内容:nginx -s reload

 

3.        反向代理配置

修改部署目录下conf子目录的nginx.conf文件(如nginx-1.5.13\conf\nginx.conf)内容,可调整相关配置。

反向代理配置示例:

location / {

        #设置主机头和客户端真实地址,以便服务器获取客户端真实IP

             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_buffering off;

 

             #设置反向代理的地址

             proxy_pass http://192.168.1.1;       

      }

代理地址根据实际情况修改。

 

4.        负载均衡配置

nginx 的 upstream默认是以轮询的方式实现负载均衡,这种方式中,每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

另外一种方式是ip_hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 

 

负载均衡配置示例:

upstream backend {

             #ip_hash;

 

             server 192.168.1.251;

             server 192.168.1.252;

             server 192.168.1.247;

         }

 

server {

        listen       80;

        server_name  trffweb;

 

        location / {

 

             #反向代理的地址

             proxy_pass http://backend;     

        }

}

 

Upstream命名和服务器地址根据实际情况修改。

 

5.        完整配置示例

nginx.conf:

 

worker_processes  1;

events {

    worker_connections  1024;

}

 

http {

    include       mime.types;

    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

 

    upstream backend {

             #ip_hash;

             server 192.168.1.251;

             server 192.168.1.252;

             server 192.168.1.247;

         }

 

    server {

        listen       80;

        server_name  2;

 

        location / {

        #设置主机头和客户端真实地址,以便服务器获取客户端真实IP

             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_buffering off;

 

             #反向代理的地址

             proxy_pass http://backend;     

        }

    }

 

}

注:转载需注明出处及作者。

      

你可能感兴趣的文章
[CC-SEAPERM2]Sereja and Permutations
查看>>
我的博客园的CSS和html设置
查看>>
implicitly_wait()隐式等待
查看>>
转 结构体中字节对齐问题(转载)
查看>>
ASP.NET调用存储过程
查看>>
web前端关于@media的说明及使用
查看>>
《大话设计模式》读书笔记6 工厂方法模式
查看>>
SilverLight控件之ComboBox
查看>>
TP-Link访问策略
查看>>
Model to Text工具Acceleo使用教程——背景知识
查看>>
C#_WPF中创建二维码、识别二维码
查看>>
Win8困境,或由Surface Pro改变
查看>>
风险案例-28期-项目Leader与团队成员缺乏沟通,问题响应度较慢导致团队士气低落,工作效率低...
查看>>
tomcat部署项目如何去掉项目名称
查看>>
C++学习笔记11--纯虚函数和抽象类
查看>>
webview调起浏览器
查看>>
实验四 恶意代码技术
查看>>
最大子序列和(单调队列算法)
查看>>
linux下 GCC编译链接静态库&动态库
查看>>
D2前端技术论坛——2014绽放
查看>>