【Nginx 开发】反向代理配置,负载均衡配置,动静分离配置

2024-05-05 06:52

本文主要是介绍【Nginx 开发】反向代理配置,负载均衡配置,动静分离配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

nginx 配置

  • 反向代理
  • 配置负载均衡
  • 配置动静分离

反向代理

我们根据实例进行讲解,效果是通过在浏览器访问www.hlh.com,跳转到Linux系统的tomcat主页面中

第一步:在windows系统的host文件进行域名和ip对应关系的配置
在host文件中添加自己的地址映射
192.168.175.111 www.hlh.com

第二步:在nginx进行请求转发的配置(反向代理的配置)

    server {listen       80;server_name  192.168.75.135;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html;proxy_pass http://127.0.0.1:8080;index  index.html index.htm;}

我们还可以及进行通过不同的访问路径进入到不同的tomcat服务器中
例如:访问http://127.0.0.1:9001/edu/,直接跳转到,127.0.0.1:8081
访问 http://127.0.0.1:9001/vod/,直接跳转到127.0.0.1:8082
仍然在配置文件中进行配置:

server{listen 9001;server_name localhost;location ~ /edu/ {proxy_pass http://localhost:8001;}location ~ /vod/ {proxy_pass http://localhost:8002; }
}
  • location后的符号表达
    =:用于不含正则表达式的url前,要求请求字符串与url严格匹配,如果匹配成功,就挺停止继续向下的搜索并立即处理该请求
    ~:用于表示url包含正则表达式,并且区分大小写
    ~*:用于表示url包含正则表达式,并且不区分大小写
    ^~:用于不含正则表达式的url前,要求Nginx 服务器找到表示url和请求字符串匹配度最高的location后,立即使用此location处理请求,而不再使用location块中的正则url和请求字符串做匹配

配置负载均衡

访问同一个地址分配到不同的tomcat端口

http{upstream myserver{server 192.168.75.135:8080;server 192.168.75.135:8081 ;}server{location /{proxy_pass http://myserver;}}
}
  • 复杂均衡的分配方式
  1. 轮询:每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能够自动剔除
  2. weight:代表权,默认为1,权重越高被分配的客户端越多
http{upstream myserver{server 192.168.75.135:8080 weight=1;server 192.168.75.135:8081 weight=1;}server{location /{proxy_pass http://myserver;}}
}
  1. ip_hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session问题
http{upstream myserver{ip_hashserver 192.168.75.135:8080;server 192.168.75.135:8081;}server{location /{proxy_pass http://myserver;}}
}
  1. fair(第三方):按照服务器的响应时间来分配,访问时间短的先行进行分配
http{upstream myserver{server 192.168.75.135:8080;server 192.168.75.135:8081;fair;}server{location /{proxy_pass http://myserver;}}
}

配置动静分离

动静分离目前的两种方式:

  1. 把静态文件独立成单独的域名,放在独立的服务器上(目前的主流)
  2. 动态跟静态文件混合在一起发布,通过nginx来分开

举例访问/www/image时访问nginx本地的静态资源

http{server{location /www/{root /data/;index index.html}location /image/{root /data/;autoindex on;}}
}

root 跟的是在nginx中静态资源所在的目录
autoindex on:表示展示的时候列出目录中所有的文件

这篇关于【Nginx 开发】反向代理配置,负载均衡配置,动静分离配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/961056

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

hadoop开启回收站配置

开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

高效+灵活,万博智云全球发布AWS无代理跨云容灾方案!

摘要 近日,万博智云推出了基于AWS的无代理跨云容灾解决方案,并与拉丁美洲,中东,亚洲的合作伙伴面向全球开展了联合发布。这一方案以AWS应用环境为基础,将HyperBDR平台的高效、灵活和成本效益优势与无代理功能相结合,为全球企业带来实现了更便捷、经济的数据保护。 一、全球联合发布 9月2日,万博智云CEO Michael Wong在线上平台发布AWS无代理跨云容灾解决方案的阐述视频,介绍了

wolfSSL参数设置或配置项解释

1. wolfCrypt Only 解释:wolfCrypt是一个开源的、轻量级的、可移植的加密库,支持多种加密算法和协议。选择“wolfCrypt Only”意味着系统或应用将仅使用wolfCrypt库进行加密操作,而不依赖其他加密库。 2. DTLS Support 解释:DTLS(Datagram Transport Layer Security)是一种基于UDP的安全协议,提供类似于