一.配置子机:

1.下载包EasyWebSvr1.9(https://www.jb51.net/softs/569398.html)
2.在桌面创建一个文件夹,在文件夹里面创建一个html文件写入一个h1标签
3.打开下载的包 启动EasyWebSvr.exe
image.png
4.配置自定义的web访问页面
打开页面,点击下面的小锤子》点击下面的设置
image.png
5.进入下面页面配置自定义的web文件夹,找到自定义的html页面
image.png
6.点击确定,点击锤子左边的小圆点启动服务
image.png
在这里子机就配置完了

二、配置母机:


一、Nginx相关:

安装:http://nginx.org/en/download.html
下载windows版本
image.png


1.1 正向代理与反向代理

nginx配置 - 图6
客户端 》代理 》广域网 》服务器
客户端》广域网》代理 》 服务器


1.2 负载均衡

Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。扩展策略,就天马行空,只有你想不到的没有他做不到的啦,你可以参照所有的负载均衡算法,给他一一找出来做下实现。
nginx配置 - 图7

  • 1、全局块:配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。
  • 2、events块:配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
  • 3、http块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。
  • 4、server块:配置虚拟主机的相关参数,一个http中可以有多个server。
  • 5、location块:配置请求的路由,以及各种页面的处理情况。


    1.3 配置文件详解

    1. ########### 每个指令必须有分号结束。#################
    2. #user administrator administrators; #配置用户或者组,默认为nobody nobody。
    3. #worker_processes 2; #允许生成的进程数,默认为1
    4. #pid /nginx/pid/nginx.pid; #指定nginx进程运行文件存放地址
    5. error_log log/error.log debug; #制定日志路径,级别。这个设置可以放入全局块,http块,server块,级别以此为:debug|info|notice|warn|error|crit|alert|emerg
    6. events {
    7. accept_mutex on; #设置网路连接序列化,防止惊群现象发生,默认为on
    8. multi_accept on; #设置一个进程是否同时接受多个网络连接,默认为off
    9. #use epoll; #事件驱动模型,select|poll|kqueue|epoll|resig|/dev/poll|eventport
    10. worker_connections 1024; #最大连接数,默认为512
    11. }
    12. http {
    13. include mime.types; #文件扩展名与文件类型映射表
    14. default_type application/octet-stream; #默认文件类型,默认为text/plain
    15. #access_log off; #取消服务日志
    16. log_format myFormat '$remote_addr–$remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for'; #自定义格式
    17. access_log log/access.log myFormat; #combined为日志格式的默认值
    18. sendfile on; #允许sendfile方式传输文件,默认为off,可以在http块,server块,location块。
    19. sendfile_max_chunk 100k; #每个进程每次调用传输数量不能大于设定的值,默认为0,即不设上限。
    20. keepalive_timeout 65; #连接超时时间,默认为75s,可以在http,server,location块。
    21. upstream mysvr {
    22. server 127.0.0.1:7878;
    23. server 192.168.10.121:3333 backup; #热备
    24. }
    25. error_page 404 https://www.baidu.com; #错误页
    26. server {
    27. keepalive_requests 120; #单连接请求上限次数。
    28. listen 4545; #监听端口
    29. server_name 127.0.0.1; #监听地址
    30. location ~*^.+$ { #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
    31. #root path; #根目录
    32. #index vv.txt; #设置默认页
    33. proxy_pass http://mysvr; #请求转向mysvr 定义的服务器列表
    34. deny 127.0.0.1; #拒绝的ip
    35. allow 172.18.5.54; #允许的ip
    36. }
    37. }
    38. }

    二.使用方法

    1.下载nginx的包,进行解压
    2.打开nginx的文件夹》打开conf文件夹》找到nginx.conf文件 进行打开:如下内容(以下是配置好的conf文件)

    1. worker_processes 1;#允许生成的进程数,默认为1 进程数不能大于cpu核数
    2. events {
    3. worker_connections 1024;#最大连接数,默认为512
    4. }
    5. http {
    6. include mime.types; #192.168.0.31 192.168.0.32 192.168.0.33
    7. default_type application/octet-stream;
    8. sendfile on;
    9. keepalive_timeout 65;
    10. #配置子机列表(子机的ip地址和端口号‘这里也可以写域名’)
    11. upstream tomcats{
    12. server 192.168.0.31:80;
    13. server 192.168.0.33:80;
    14. server 192.168.0.62:80;
    15. }
    16. server {
    17. listen 80;
    18. server_name localhost;
    19. #下面的 / 表示拦截所有请求
    20. location / {
    21. #分流到tomcats里面去
    22. proxy_pass http://tomcats;
    23. }
    24. error_page 500 502 503 504 /50x.html;
    25. location = /50x.html {
    26. root html;
    27. }
    28. }
    29. }

    3.在nginx.conf文件中配置子机的访问地址:

    1. #配置子机列表(子机的ip地址和端口号‘这里也可以写域名’)
    2. upstream tomcats{
    3. server 192.168.0.31:80;
    4. server 192.168.0.33:80;
    5. server 192.168.0.62:80;
    6. }

    4.在nginx.conf文件中配置分流到tomcats里面去:

    1. #下面的 / 表示拦截所有请求
    2. location / {
    3. #分流到tomcats里面去
    4. proxy_pass http://tomcats;
    5. }

    5.启动nginx.exe:
    image.png