Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离)

这篇具有很好参考价值的文章主要介绍了Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于代理

正向代理:

客户明确知道自己访问的网站是什么

隐藏客户端的信息

目录

关于代理

一、Nginx的安装与配置

1、安装依赖

2、安装nginx

(1)上传压缩包到目录 /usr/nginx里面

(2)解压文件

(3)进入到nginx的文件夹下面 进行默认的配置  ./configure

(4) Make && make install

(5)Whereis nginx

(6)启动nginx

(7)查询nginx进程

(8)此页面表示成功

二、配置反向代理

1、打包vue项目

2、反向代理

三、反向代理2

1、同时代理两个时,根据访问的路径跳转到不同端口的服务器中

2,路径的正则表达式

四、Nginx配置负载均衡

1、克隆

2、启动项目

3、Nginx配置负载均衡

4、负载均衡的策略配置

1、轮询(默认)

2、weight

3、ip_hash

4、fair(第三方)

五、动静分离

六、配置nginx开机启动

前后端连接


客户端和代理服务器  一起的

正向代理最大的特点是客户端非常明确要访问的服务器地址

它代理的是客户端,代客户端发出请求

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

反向代理

客户户访问一个网站

 隐藏服务端的信息

服务端和代理服务器 一起的

反向代理的作用:

(1)保证内网的安全,通常将反向代理作为公网访问地址,Web服务器是内网

(2)负载均衡,通过反向代理服务器来优化网站的负载

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

一、Nginx的安装与配置
1、安装依赖

gcc安装

yum install -y gcc-c++

PCRE安装:pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库。

安装命令:yum install -y pcre pcre-devel

zlib安装:zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装

安装命令:yum install -y zlib zlib-devel

OpenSSL安装:penssl是web安全通信的基石,没有openssl,可以说我们的信息都是在裸奔,所以需要安装

安装命令:yum install -y openssl openssl-devel

如果以上命令执行比较麻烦可以执行如下命令

yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

2、安装nginx
(1)上传压缩包到目录 /usr/nginx里面

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

或者联网直接下载:

wget -c https://nginx.org/download/nginx-1.15.10.tar.gz

(2)解压文件

tar -zxvf nginx-1.15.10.tar.gz

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(3)进入到nginx的文件夹下面 进行默认的配置  ./configure

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(4) Make && make install

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(5)Whereis nginx

查看nginx的位置

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(6)启动nginx

切换到 cd /usr/local/nginx/ sbin/ 下

./nginx 启动 (前题防火墙必须关)

./nginx -s reload 重新加载

 ./nginx -s quit 此方式停止步骤是待nginx进程处理任务完毕进行停止。

[./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。(粗暴)

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(7)查询nginx进程

ps aux|grep -v grep|grep nginx

ps -ef|grep -v grep|grep nginx

(8)此页面表示成功

当问nginx默认的端口号是80

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

二、配置反向代理
1、打包vue项目

 (1)修改配置文件        目的:防止路径出错Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(2)路由模式:

Src/router/index.js

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

进行打包

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

这是打包好的dist

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

2、反向代理

将dist上传到linux的文件里

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

vim nginx.conf修改配置

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

修改完保存后重新加载

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

http://192.168.195.33/可以直接访问页面

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

vim nginx.conf修改配置

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

访问 192.168.195.33的时候直接指向的是 192.168.195.34:8080

当我们访问nginx服务器的时候  直接指向的是 192.168.195.33:8080 这个地址

        location /test2 {
          proxy_pass http://192.168.159.34:8899/;

        }

3.代理本地localhost:8080/

本地IP地址为172.16.2.76,启动本地的项目

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

linux是能通本地http://172.16.2.76:8080/user

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

本地也能通linux中的ip地址

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

修改nginx.conf的location

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

浏览器有数据代表成功

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

三、反向代理2

启动nginx

/usr/local/nginx/sbin/nginx

1、同时代理两个时,根据访问的路径跳转到不同端口的服务器中

nginx.conf添加一个linux的IP地址项目(启动好已打包好的java的jar包Linux03中

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

添加好后保存退出vim,启动nginx或者重新加载nginx(/usr/local/nginx/sbin/nginx -s reload)

打开项目可以看到不同的地址的页面 192.168.195.33:8080

访问ngnix的test路径的时候,代理到 172.16.2.76:8080

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

 访问ngnix的默认路径的时候,代理到 172.16.2.76:8080

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

2,路径的正则表达式

1、= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配 成功,就停止继续向下搜索并立即处理该请求。

2、~:用于表示 uri 包含正则表达式,并且区分大小写。

3、~*:用于表示 uri 包含正则表达式,并且不区分大小写。

4、^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字 符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location 块中的正则 uri 和请求字符串做匹配。 注意:如果 uri 包含正则表达式,则必须要有 ~ 或者 ~* 标识。

四、Nginx配置负载均衡
1、克隆

克隆两个虚拟机这里可以称为服务器(改好IP地址)

一个用于启动nginx,两个用于运行项目

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

2、启动项目

两个服务器分别4启动项目

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

3、Nginx配置负载均衡

(1)nginx.conf配置

在http下配置这个(分别为两个启动项目的ip)

aaa为名字,可以更改,改后location的也要改

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

location ,配置好后重新启动nginx

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

为了区分两个项目也可以更改一些数据

打开项目,注意访问的是http://192.168.195.33/user

通过代理默认轮询的访问34和35这两个项目

第一次访问

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

第二次访问,然后依次轮换

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

4、负载均衡的策略配置
1、轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。

2、weight

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(如果有10次访问就会访问9次34,1次35)

weight 代表权重默认为 1,权重越高被分配的客户端越多

指定轮询几率,weight 和访问比率成正比,用于后端服务器性能不均的情况

3、ip_hash

每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题。 例如:

upstream aaa{

ip_hash;

server 192.168.159.34:8080 ;

server 192.168.159.34:8081 ;

}
4、fair(第三方)

按后端服务器的响应时间来分配请求,响应时间短的优先分配。

upstream aaa{

fair;

server 192.168.159.34:8080 ;

server 192.168.159.34:8081 ;

}
五、动静分离

Nginx 动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和 静态页面物理分离。严格意义上说应该是动态请求跟静态请求分开,可以理解成使用 Nginx 处理静态页面,Tomcat 处理动态页面。动静分离从目前实现角度来讲大是纯粹把静态文件独立成单独的域名,放在独立的服务器上,也是目前主流推崇的方案;

配置静态资源:

(1)约定:

静态资源 location / {}

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

可以访问的到,但数据

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(2)也可以不遵循约定

location /名字的时候{

root  

}

必须在root对应的目录下面有这个 名字  的文件夹,root 后面目录就不用写这个文件夹了

 location /dist {
            root   /usr/pro;
            index  index.html index.htm;
        }

访问时也需要加这个名字

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

(3)也可以任意写名字

起别名,必须把root换成alias,后面的目录正常写Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

location /aaa {
            alias   /usr/pro/dist;
            index  index.html index.htm;
        }

alias 访问aaa的时候 其实访问的是 /usr/pro/dist

访问

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器

六、配置nginx开机启动

切换到/lib/systemd/system/目录,创建nginx.service文件vim nginx.service

cd /lib/systemd/system/

vim nginx.service

添加内容如下:

[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx  -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s  reload
ExecStop=/usr/local/nginx/sbin/nginx  -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
配置之后需要使文件生效
systemctl daemon-reload
退出并保存文件,执行systemctl enable nginx.service使nginx开机启动
#开机自启动
systemctl enable nginx.service
#停止开机自启动
systemctl disable nginx.service
#查询当前状态
systemctl status nginx.service
#启动服务
systemctl start nginx.service
#重新启动服务
systemctl restart nginx.service
#停止服务
systemctl stop nginx.service
#重新加载配置
systemctl reload nginx.service
前后端连接

配置好后可以关掉进程重新启动测试

前端需要传数据,main.jsURL改为192.168.195.33/mypro/,然后将前端项目打包上传到linux就可以了

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离),linux,nginx,服务器文章来源地址https://www.toymoban.com/news/detail-812265.html

到了这里,关于Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Nginx反向代理服务配置和负载均衡配置

    node1:128 node2:135 node3:130 node4:132 node2、node3、node4已安装nginx nginx安装可查看https://blog.csdn.net/HealerCCX/article/details/132089836?spm=1001.2014.3001.5502

    2024年02月14日
    浏览(42)
  • Nginx 【location配置路径详解、反向代理、负载均衡】

    在使用nginx时,我们配置最多的就是location项了。方向代理、负载均衡、静态资源服务器这些高频使用的共能点,几乎主要都在location配置。本文内容将包含上诉功能,并详细介绍location的匹配规则。 location的匹配语法分成两个部分, [] 括号中的时匹配符,决定以何种方式进行

    2024年02月03日
    浏览(41)
  • Nginx从安装到使用,反向代理,负载均衡

    1.1、Nginx介绍 Nginx是一款轻量级的web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx的网站有:百度、京东、新浪、网易、腾讯、淘宝等。 Nginx是由 伊戈

    2024年02月10日
    浏览(41)
  • nginx反向代理服务器及负载均衡服务配置

    一、正向代理与反向代理 正向代理:是一个位于客户端和原始服务器(oricin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。 正向代理的典型用途是为在防火

    2024年02月04日
    浏览(48)
  • 编译安装Nginx和使用五种算法实现Nginx反向代理负载均衡

    目录 Ubuntu中安装Nginx 概念介绍 负载均衡 几种负载均衡算法 反向代理 环境规划 配置反向代理 加权负载均衡(Weighted Load Balancing) 轮询(Round Robin) IP 哈希(IP Hash) 最少连接(Least Connections) URL 哈希(URL Hash) 想要安装nginx,首先我们需要有一台Ubuntu的虚拟机,然后最好在

    2024年01月25日
    浏览(52)
  • Nginx配置整合:基本概念、命令、反向代理、负载均衡、动静分离、高可用

    Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理server。其特点是占有内存少。并发能力强,其并发能力确实在同类型的网页server中表现较好。 Web服务器是指驻留于因特网上某种类型计算机的程序。当Web浏览器(客户端)连到服务器上并请求文件时,服务器

    2024年02月16日
    浏览(42)
  • 03Nginx的静态资源部署,反向代理,负载均衡,动静分离的配置

    部署静态资源 Nginx相对于Tomcat处理静态资源的能力更加高效,所以在生产环境下一般都会将Nginx可以作为静态web服务器来部署静态资源 静态资源: 在服务端真实存在并且能够直接展示的一些html页面、css文件、js文件、图片、视频等资源文件 将静态资源部署到Nginx非常简单,只需要

    2024年02月04日
    浏览(44)
  • Linux配置nginx反向代理

    在云服务器上部署高并发的服务,使用Nginx作为反向代理是一种常见的做法,可以实现流量分发、负载均衡,同时提升系统的可靠性和性能。 步骤概览: 安装Nginx: 确保服务器已安装Nginx。若未安装,可使用适用于你服务器系统的包管理工具(如apt或yum)进行安装。 配置负载

    2024年02月11日
    浏览(41)
  • 【nginx实战】nginx正向代理、反向代理、由反向代理实现的负载均衡、故障转移详解

    本文将要讨论以下内容 正向代理与反向代理的基本概念 Nginx正向代理服务的配置指令、Nginx反向代理服务的配置指令 Nginx反向代理服务器的应用——负载均衡、故障转移 案例分析   正向代理的概念 局域网内的机器借助代理服务访问局域网外的网站,此代理服务器提供的服务

    2024年01月24日
    浏览(52)
  • Nginx 反向代理负载均衡

    Nginx 反向代理负载均衡 普通的负载均衡软件,如 LVS,其实现的功能只是对请求数据包的转发、传递,从负载均衡下的节点服务器来看,接收到的请求还是来自访问负载均衡器的客户端的真实用户;而反向代理就不一样了,反向代理服务器在接收访问用户请求后,会代理用户

    2024年02月03日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包