Skip to content

Nginx

Nginx安装配置
  1. 安装编译工具
shell
yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel
  1. 下载

    • 官网下载安装压缩包
    • wget 安装
    shell
    #安装wget
    yum install wget
    wget https://nginx.org/download/nginx-1.22.1.tar.gz
    #解压
    tar -zxvf nginx-1.22.1.tar.gz -C /usr/local/src/
    #安装到指定位置
    ./configure --prefix=/usr/local/src/nginx
    #编译安装
    make && make install
    #配置全局环境
    vim /etc/profile
    source /etc/profile
  2. image

    image

常用命令
命令操作
./nginx -v查看版本
./nginx -t检测配置文件是否正常
./nginx启动服务
./nginx -s stop关闭服务
ps -ef| grep nginx查看进程
./nginx -s reload重新加载配置文件
nginx配置文件结构
  • 全局块 Nginx 运行相关的全局配置

  • events块 网络连接相关的配置

  • http块 代理,缓存,日志,虚拟主机配置

    • http块 中可以配置多个Server块,每个Server块可以配置多个localtion块

    • http全局块

    • Server块

      • Server全局块
      • localtion块
shell
#全局块
worker_processes  1;

#events块
events {
    worker_connections  1024;
}

http {
	#http全局块
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;
	#server块
    server {
    	#Server全局块
        listen       80;#监听端口
        server_name  localhost;#服务器名称(域名)
		#localtion块
        location / {#匹配客户端请求url
            root   html;#指定静态资源根目录
            index  index.html index.htm;#指定默认首页
            proxy_pass http://127.0.0.1#反向代理配置,将请求转发到指定服务器
        }
      
        error_page   500 502 503 504  /50x.html;
        #localtion块
        location = /50x.html {
            root   html;
        }
    }
}
反向代理

正向代理和反向代理

  • 正向代理 (代理客户)

    image
    • 又或者国内访问不上 GitHub,但是可以使用代理工具,代理工具替你去访问GitHub服务器,并将结果返回给你,你只需要访问代理服务器即可
  • 反向代理 (代理服务器)

    • 客户端访问服务器,服务器为了防止恶意访问(DoS/DDoS),在访问中间增加代理服务器用于接收客户端的请求,代理服务器再去请求服务器,服务器将响应的结果放回给代理,最后代理将请求的结果返回

      image
反向代理demo
  • 配置文件(代理服务器ip:192.168.43.10)

    shell
    server{
    	listen 8080;
    	server_name localhost;
    	location / {
    		proxy_pass http://192.168.43.11:8080;
    	}
    }
  • 192.168.43.11服务器开启Web服务

  • image
  • | image | image | | :----------------------------------------------------------: | :----------------------------------------------------------: |

负载均衡
  1. 配置
shell
upstream targetServer{#定义一组服务器
	server 192.168.43.10:8080;
	server 192.168.43.10:8081;
}

server{
	listen 8080;
	server_name localhost;
	location / {
		proxy_pass http://targetServer;
	}
}
  1. 策略(默认轮询方式)
名称说明
weight权重方式
ip_hash根据ip分配方式
least_conn依据最少连接数
url_hash依据url分配方式
fair依据响应时间
win操作
  1. cmd进入nginx安装目录

  2. 启动nginx

    shell
    start nginx
  3. 停止nginx

    1. 查看nginx所有进程

      shell
      tasklist /fi "imagename eq nginx.exe"
    2. 通过指令停止nginx

      shell
      nginx.exe -s stop
    3. 通过查看到的进程PID,强行杀死进程

      shell
      TASKKILL /PID xxxx /F