Nginx 服务器

本文介绍了Nginx作为HTTP和反向代理服务器的特性,重点讲解了反向代理与负载均衡的概念及配置方法。在反向代理中,Nginx代理服务端处理用户请求;在负载均衡方面,通过轮询、加权轮询、iphash策略实现服务器压力分散。此外,还提供了Nginx在Windows和Linux环境下的安装与启动步骤,以及常用命令。配置示例展示了如何设置反向代理和负载均衡规则。
摘要由CSDN通过智能技术生成

简介

Nginx 是一款HTTP和反向代理服务器,它的内存占用少,能够支持高达五万个并发连接响应,其主要有三个功能,反向代理、负载均衡

反向代理

  1. 正向代理,就相当于 VPN,当你想要访问一个服务器但是由于某种原因不能直接访问时,可以去访问一个代理服务器,再由那个代理服务器去访问。正向代理是代理客户端

  2. 反向代理,当用户发起请求想要访问某台服务器时,这个请求会指向一台代理服务器,代理服务器再将访问分发给其他服务器。反向代理是代理服务端

负载均衡

当某一时刻用户访问量特别大时,服务器的压力就会非常大,此时就会用到负载均衡,来减轻服务器的压力,Nginx主的负载均衡策略有 轮询、加权轮询、iphash等

  1. 轮询: 例如有三台服务器,第一次请求访问到服务器一,第二次访问到服务器二,第三次访问到服务器三,这样依次循环

  2. 加权轮询:若是某台服务器性能更加强大,则该服务器就会处理更多的请求,反之更少

  3. iphash: 根据用户的ip来永久指定某台服务器,这样这个用户的请求永远只达到这台服务器,可以解决session共享的问题

下载安装

在windows下

将下载好的安装包解压后(解压目录不要有中文),打开conf目录下的nginx.con文件,可以看到监听的端口是80,随后,在根目录中双击或使用cmd运行 start nginx 启动(没有启动日志),在浏览器访问 localhost 80端口即可

在 Linux 下

使用xftp将文件传输至 centos,并解压,得到以下文件

随后执行 ./configure ,再执行 make 命令 和 make install

全部执行完之后 使用 whereis nginx 查看所在位置,并cd过去,执行它 sbin 目录下的 nginx 即可启动 ./nginx

常用命令

./nginx  启动
 ./nginx -s -stop  强制停止
 ./nginx -s quit 正常停止
 ./nginx -s reload 重新加载配置文件
 ps aux|grep nginx 查看nginx 进程

修改配置信息就行反向代理

 ## 全局配置
 events {
     worker_connections  1024;
 }
 ​
 ​
 http {
     ## 主要配置
     
     ## 负载均衡配置
     upstream test{
         # 服务器资源 例如这里有两个资源 weight为权重,全部为一时则轮询,否则进行加权轮询
         server 127.0.0.1:9000 weight=1;
         server 127.0.0.1:8080 weight=1;
     }
     
     upstream testt{
         server 127.0.0.1:8080 weight=1;
     }
     
     ## 请求转发
     ## 每一个 server对象 就是监听一个端口 ,而server对象下的 location 就是该端口下的资源地址
     ## 这里的配置为 监听 http://localhost:80/ 
     server {
         listen       80;
         server_name  localhost;
 ​
         ## 每一个location 就是一个请求路径
         ## 例如这里 就是监听 http://localhost:80/ 
         ## 访问这个地址,就会根据这个配置信息就行加载
         location / {
             root   html;
             index  index.html index.htm;
             proxy_pass http://test
         }
         
         error_page   500 502 503 504  /50x.html;
         location = /50x.html {
             root   html;
         }
         
     }
     
     ## 这里 监听 90 端口 下的 /a 地址
     ## http://localhost:90/a
     ## 访问此路径 就会转到上面的 testt 配置 也就是 http://127.0.0.1:8080
     server {
         listen       90;
         server_name  local2;
         location /a {
             root   html;
             index  index.html index.htm;
             proxy_pass http://testt;
         }
     }
     
     
 ​
 }

当使用nginx -s reload生效配置时,若出现nginx: [error] CreateFile()错误,则检查logs下是否有 nginx.pid 文件,若没有,则杀掉nginx进程,并重新启动(推荐使用 start nginx启动)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值