首页 > 系统相关 >Nginx

Nginx

时间:2023-12-13 11:23:56浏览次数:35  
标签:http nginx server Nginx location 服务器

简介

Nginx(”engine x”)是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强,事实上Ngfinx的并发能力确实在同类型的网页服务器中表现较好。Nginx专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验,有报告表明能支持高达50000个并发连接数。

正向代理:如果把局域网外的Internet想象成一个巨大的资源库,则局域网中的客户端要访问Internet,则需要为浏览器配置代理服务器来访问,这种代理服务就称为正向代理。

反向代理:我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器P地址。

正向代理:代理客户端;反向代理:代理服务端。

负载均衡:将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器。

动静分离:为了加快网站的解析速度,将动态请求和静态请求分开。

常用命令

使用Nginx操作命令的前提是必须先进入Nginx的目录:/usr/local/nginx/sbin

命令 作用
./nginx -v 查看Nginx版本
./nginx 启动Nginx
./nginx -s stop 关闭Nginx
./nginx -s reload 重新加载Nginx

配置文件

Nginx配置文件:/usr/local/nginx/conf/nginx.conf

全局块主要会设置一些影响 nginx 服务器整体运行的配置指令,包括配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等。

events 块涉及的指令主要影响 Nginx 服务器与用户的网络连接,常用的设置包括是否开启对多 work process下的网络连接进行序列化,是否允许同时接收多个网络连接,选取哪种事件驱动模型来处理连接请求,每个 wordprocess 可以同时支持的最大连接数等。

http块是Nginx服务器配置中最频繁的部分,代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里,包括 http 全局块、server 块。http 全局块配置的指令包括文件引入、MIME-TYPE 定义、日志自定义、连接超时时间、单链接请求数上限等。每个 http 块可以包括多个 server 块,而每个 server 块就相当于一个虚拟主机。而每个 server 块也分为全局 server 块,以及可以同时包含多个 locaton 块。

反向代理

遇到此站点的连接不安全的问题时候,检查一下自己是不是将http打成了https

修改host文件记得使用ANSI编码格式,否则会无效。

修改配置文件中的server,配置location中的参数。

server {
    listen       9001;
    server_name  192.168.52.130;

    location ~ /edu/ {
        proxy_pass http://127.0.0.1:8080;
    }

    location ~ /vod/ {
        proxy_pass http://127.0.0.1:8081;
    }
}

负载均衡

  1. 首先使用upstream配置进行负载均衡的端口。
upstream myserver {
    server  192.168.52.130:8080;
    server  192.168.52.130:8081;
}
  1. 然后配置location,记得名字是对应的。
location / {
    root   html;
    proxy_pass  http://myserver;
    index  index.html index.htm;
}

访问方式

  1. 轮询:每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。
  2. 权重:为每个端口设置权重,权重越高,分配的客户端越多。
  3. ip_hash:每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题。
  4. fair:按后端服务器的响应时间来分配请求,响应时间短的优先分配。

动静结合

分别为动态资源和静态资源配置location即可。

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

location /image/ {
    root  /data/;
    autoindex on;
}

高可用

生产环境之Nginx高可用方案

Nginx原理

Nginx分为Master和Worker两个部分。

Worker的个数最好与CPU的个数相同,这样能够发挥出最大的性能。

标签:http,nginx,server,Nginx,location,服务器
From: https://www.cnblogs.com/xiqin-huang/p/17898660.html

相关文章

  • Nginx-server-文件下载配置
    server{ listen8001; server_namelocalhost; #错误日志:在location块中添加错误日志记录,以便于问题排查。 error_log/var/log/nginx/8001_down_error.log; #通过valid_referers指令来限制允许访问资源的来源。 valid_referersnoneblockedserver_nameslocalh......
  • 深入了解RPM包管理与Nginx源码包管理
    在Linux系统中,RPM(RedHatPackageManager)是一种流行的软件包管理工具,用于安装、查询和卸载软件包。同时,在编译和安装Nginx等软件时,源码包管理也是一个重要的方面。本文将详细介绍RPM包管理的基本操作以及Nginx源码包管理的方法。RPM包管理1.安装RPM包使用命令可以轻松安装RPM......
  • Nginx——记录post请求回执405的一种解决方式
    前言:nginx做反向代理,一直报405,由于之前配置过,一直是没问题的,这次一直报405,搞了一下午,终于找到原因了是因为开启了多个ngixn导致的。解决办法:cmd杀掉nginx后台进程命令杀掉nginx后台nginx常用命令taskkill/f/t/imnginx.exenginx 常用命令startnginx#启动Ng......
  • Docker部署Nginx Proxy Manager
    更新环境aptupdate-y&&aptinstall-ycurlsocatwgetsudoBBRPLUS四合一脚本wget-N--no-check-certificate"https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh"&&chmod+xtcp.sh&&./tcp.sh安装Dockerc......
  • 镜像挂载+nginx实现局域网yum源
    应用说明在内网的linux主机搭建系统时,主机无法使用默认配置的官网yum源,且内网环境中不提供公共yum源,在这个情况下可自行搭建局域网yum源。部署方式:选择一台主机作为服务端,在这台主机上挂载系统iso镜像,并部署nginx将package进行发布,其他主机作为客户端配置局域网yum源iso镜像要......
  • Nginx 各种反向代理方式_nginx反向代理1
    Nginx反向代理代理http实现负载均衡nginx代理httpsnginx代理tcpnginx平滑升级代理http本次实验后端为geoserver如下就可以实现基础的http反向代理server{listen80;server_name192.168.144.100;location/{......
  • Nginx 黑白名单
    Nginx做黑白名单机制,主要是通过allow、deny配置项来实现:allowxxx.xxx.xxx.xxx;#允许指定的IP访问,可以用于实现白名单。denyxxx.xxx.xxx.xxx;#禁止指定的IP访问,可以用于实现黑名单。要同时屏蔽/开放多个IP访问时,如果所有IP全部写在nginx.conf文件中定然是不显示的,这种方式比较......
  • nginx 反向代理实现不同来路IP跳转到不同网站服务器
    http{#定义一个map,将来路IP映射到后端服务器map$remote_addr$backend_server{defaultserver1;192.168.1.1server2;#添加更多的IP地址映射}server{listen80;#使用if语句根据来路IP选择后......
  • Nginx Rewrite
    Nginx RewriteLOCATION常用NGINX正则表达式^:匹配输入字符串的起始位置$:匹配输入字符串的结束位置*:匹配前面的字符零次或多次。如“ol*”能匹配“o”及“ol”、“oll”+:匹配前面的字符一次或多次。如“ol+”能匹配“ol”及“oll”、“olll”,但不能匹配“o”?:匹配前......
  • nginx 安装记录
    可以先更新一下列表:aptupdate安装很简单,直接:aptinstallnginx-y这个步骤直接安装好了不说,还直接将nginx服务给启动起来了。不过这个时候也可以看到其作为systemctl的服务,其路径是处于:/lib/systemd/system/nginx.service的,而非是处于/etc/systemd下的。 它的配置文件......