Nginx实现Nacos反向代理的项目实践

目录
  • 1.win10安装Nginx
    • 1.1 windows系统启动和停止的命令
  • 2.win10安装nacos
    • 2.1 搭建三台nacos步骤

1.win10安装Nginx

nginx下载地址

nginx: download

下载后解压,进入bin目录,根据你的系统执行相应的命令

1.1 windows系统启动和停止的命令

启动

start nginx.exe

终止

nginx.exe -s stop //停止nginx

nginx.exe -s reload //重新加载nginx

nginx.exe -s quit //退出nginx

2.win10安装nacos

nacos官网网址

Nacos 快速开始

2.1 搭建三台nacos步骤

1.复制三份解压后的nacos文件包分别命名如下

  • nacos8848
  • nacos8849
  • nacos8850

2.以nacos8848为例,进入该目录,进入conf目录修改application.properties文件,使用外置数据源

### Default web server port:
server.port=8848

#*************** Network Related Configurations ***************#
### If prefer hostname over ip for Nacos server addresses in cluster.conf:
# nacos.inetutils.prefer-hostname-over-ip=false

### Specify local server's IP:
# nacos.inetutils.ip-address=
#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root

3.将conf/cluster.conf.example改为cluster.conf,添加节点配置

#2022-03-23T10:56:12.825
localhost:8849
localhost:8850

4.另外几台也照这个配置修改,注意端口号的修改

创建mysql数据库,sql文件位置:conf\nacos­mysql.sql

5.分别启动三台nacos,启动命令为进入到bin目录,cmd执行startup.cmd

startup.cmd

6.配置nginx.conf

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;
	upstream nacoscluster {
		server localhost:8848;
		server localhost:8849;
		server localhost:8850;
	}

	   server {
        listen       8847;
        server_name  localhost;

		location /nacos/ {
            proxy_pass http://nacoscluster/nacos/;
        }

        location = /50x.html {
            root   html;
        }
        error_page   500 502 503 504  /50x.html;
    }

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

}

7.执行nginx

start nginx.exe

我们监听的是8847端口,所以我们登录nacos直接使用nginx进行代理

http://localhost:8847/nacos

我们可以看到当你刷新的时候,分配到的是不同的服务器上

到此这篇关于Nginx实现Nacos反向代理的项目实践的文章就介绍到这了,更多相关Nginx Nacos反向代理内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Nginx实现静态资源的反向代理实例

    github 中很多项目都有一个 readme 文件,很多人喜欢在文件中添加自己的创作或封面图片,比如 substack 为他的每个项目绘制了一个 logo.这些图片在 github 中能直接在页面中显示出来,不过 url 被替换成了 github 自己的.比如在 browserify 项目中,logo 的链接变成了 复制代码 代码如下: https://camo.githubusercontent.com/e19e230a9371a44a2eeb484b83ff4fcf8c824cf7/687

  • Nginx作为反向代理时传递客户端IP的设置方法

    nginx默认配置文件里面是没有进行日志转发配置的,这个需要我们自己手动来操作了,当然后端的real server不同时操作方法是不一样的,这里我们分别例举几种情况来说明一下. nginx做前端,转发日志到后端nginx服务器: 因为架构的需要采用多级 Nginx 反向代理,但是后端的程序获取到的客户端 IP 都是前端 Nginx 的 IP,问题的根源在于后端的 Nginx 在 HTTP Header 中取客户端 IP 时没有取对正确的值. 同样适用于前端是 Squid 或者其他反向代理的情况.

  • Nginx服务器的反向代理proxy_pass配置方法讲解

    就普通的反向代理来讲 Nginx的配置还是比较简单的,如: location ~ /* { proxy_pass http://127.0.0.1:8008; } 或者可以 location / { proxy_pass http://127.0.0.1:8008; } Apache2的反向代理的配置是: ProxyPass /ysz/ http://localhost:8080/ 然而,如果要配置一个相对复杂的反向代理 Nginx相对Apache2就要麻烦一些了 比如,将url中以/wap/开

  • 抛弃Nginx使用nodejs做反向代理服务器

    时下不少场景,都是申请一个 VPS 主机来托管运行 Web 项目的,小弟我也不例外,购买了一个小型的 Win 03 VPS 使用着.在使用的过程中,面临一个问题,就是同一类型的服务端环境还好--但如果是一个 PHP.一个 ASP. 一个 JSP 的三种类型的服务端项目并存着,该怎么分配唯一的 80 端口呢?因为商业 WWW 网站的话,往往只能占用 80  端口,--当然,如果只是做服务的话,如接口之类的,使用其他端口就不会与 80 端口冲突了.许多开发者都会面临到 80 端口这个问题,并且实际情

  • nginx https反向代理tomcat的2种实现方法

    反向代理 在计算机世界里,由于单个服务器的处理客户端(用户)请求能力有一个极限,当用户的接入请求蜂拥而入时,会造成服务器忙不过来的局面,可以使用多个服务器来共同分担成千上万的用户请求,这些服务器提供相同的服务,对于用户来说,根本感觉不到任何差别. nginx做前端代理分发,tomcat处理请求.nginx反代tomcat实现https有二个方法. 一.nginx配置https,tomcat也配置https 1.nginx配置https upstream https_tomcat_web { se

  • Nginx实现Nacos反向代理的项目实践

    目录 1.win10安装Nginx 1.1 windows系统启动和停止的命令 2.win10安装nacos 2.1 搭建三台nacos步骤 1.win10安装Nginx nginx下载地址 nginx: download 下载后解压,进入bin目录,根据你的系统执行相应的命令 1.1 windows系统启动和停止的命令 启动 start nginx.exe 终止 nginx.exe -s stop //停止nginx nginx.exe -s reload //重新加载nginx nginx.

  • Docker容器下运行Nginx并实现反向代理

    目录 一.前言 二.运行Nginx容器 1.获取Nginx镜像 2.运行Nginx容器 三.运行ASP.NET Core应用程序 1.构建ASP.NET Core应用程序镜像 2.运行应用容器 三.设置反向代理 一.前言 我们知道,为了安全考虑,我们一般会设置反向代理,用来屏蔽应用程序真实的IP和端口号.在Linux系统上最常用的反向代理就是Nginx.本篇文章中,我们会通过Docker容器分别运行一个Nginx容器和一个ASP.NET Core应用程序的容器,然后设置反向代理. 二.运行Ngi

  • 详解Nginx 动态 DNS 反向代理的几种写法

    这篇文章的更新拖了半个月,真的是感动中国了. Nginx 默认会缓存 DNS,大家都知道,如果做反向代理,其实是访问的目标 ip,所以一旦缓存了目标 ip 就会非常麻烦. 茴字的四种写法远近闻名,万万没想到,Nginx 动态 DNS 反向代理也有 N 种玩法,这主要取决于你用的 Nginx 版本,当然运维告诉我,最好是不要用动态 DNS,但是基于业务需要,咱们也没有办法. 茴字的第一种写法:Nginx 在 Nginx 中通过设置变量可以曲线救国,当然有缺点,通过变量的方法没有办法进行负载均衡,非

  • 关于nginx 实现jira反向代理的问题

    摘要:配置nginx反向代理jira并实现https 配置Tomcat 在本文中,我们设置可以在地址http://jira.aniu.so/jira(标准HTTP端口80)上访问JIRA,而JIRA本身可以使用上下文路径/ jira监听端口8080. 配置nginx反向代理jira 配置Tomcat 修改配置文件server.xml(在jira安装目录下) 更改前: <Context docBase="${catalina.home}/atlassian-jira" path=&

  • Docker部署Nginx并配置反向代理

    准备工作 在docker内部署任何应用,都需要先下载对应的镜像:下载镜像之前,需要先搜索镜像来确认该镜像是否存在: docker search nginx 从列表可以看到,docker已经有了nginx的镜像,名称是“nginx”,接下来下载镜像: docker pull nginx 下载完成后,查看一下本地镜像: 如果在列表中看到nginx,镜像下载就已经成功了. 容器设置 在docker中,真正运行的是容器,镜像在我理解中是一种环境.我们在指定的镜像中运行某个容器,然后编辑和配置这个容器,从

  • docker-compose+nginx部署前后端分离的项目实践

    目录 安装docker 安装必要的系统工具 软件源信息切换 安装 配置镜像加速器 安装docker-compose 安装 权限修改 解决js.css文件404的情况 Vue项目配置 安装docker 安装必要的系统工具 # 更新yum工具 yum update -y # 安装必要的工具 yum install -y yum-utils device-mapper-persistent-data lvm2 软件源信息切换 yum-config-manager --add-repo http://m

  • 简单实现nginx+tomcat的反向代理与动静分离

    windows下测试 nginx+tomcat实现java web项目的动静分离 1. 安装nginx,访问静态资源 安装成功后,启动nginx,浏览器输入http://localhost/出现欢迎页面. 在nginx下依次建立目录 static\test1\js\common,并将jquery.XX.js 放进去. PS: static 代表静态文件主目录,test1 代表tomcat下的项目名称,本机使用jquery-1.12.1.min.js 修改配置文件nginx.conf,添加如下配置

  • 自动化Nginx服务器的反向代理的配置方法

    如果可以减少过多的外部隔离的API和简化部署的细节 这会是非常好的. 在以前的文章中,我解释了"一些使用反向代理的好处".在我目前的项目里,我们已经构建分布式面向服务的架构,也显式提供了一个HTTP API,我们使用反向代理将请求路由通过API路由给单个组件.我们选择了Nginx Web这个优秀的服务器作为我们的反向代理,它快速.可靠且易于配置.我们通过它将多个HTTP的API服务聚合到一个URL空间.举例来说,当你键入: http://api.example.com/product/

  • Nginx实战之反向代理WebSocket的配置实例

    实现方案 采用目前比较成熟的WebSocket技术,WebSocket协议为创建客户端和服务器端需要实时双向通讯的webapp提供了一个选择.其为HTML5的一部分,WebSocket相较于原来开发这类app的方法来说,其能使开发更加地简单.大部分现在的浏览器都支持WebSocket,比如Firefox,IE,Chrome,Safari,Opera,并且越来越多的服务器框架现在也同样支持WebSocket. WebSocket集群 在实际的生产环境中,要求多个WebSocket服务器必须具有高性

随机推荐