nginx

使用wsl(ubutun)安装nginx,服务在window本地连接

尚硅谷有全套教程,但是不是在wsl上安装

安装ngnix

先安装依赖
ubutun中没有yum,只有apt
1.安装pcre
pcre
需要有c++和c环境
sudo apt-get install build-essential
2.安装zlib
zlib
3.安装openssl
sudo apt-cache policy libssl-dev

Nginx常用指令

nginx在安装完后,在usr/local里
其中nginx的配置在配置文件里,nginx的启动在sbin里
配置文件需要在su root模式打开
sbin 有三个指令需要注意

  1. ./nginx 启动命令
  2. ./nginx -s reload 热插拔重启命令
  3. ./nginx -s stop停止命令
  4. nginx启动报错: [error] open() “/usr/local/nginx/logs/nginx.pid“ failed (2: No such file or directory)
    需要通过配置文件进行加载

开放端口
wsl和window不直联,你nginx监听哪个端口,那么需要开发该端口
在wsl里开放端口或则关闭防火墙
wsl端口
在windows里要有映射
是否成功通过 telnet wls_ip:port进行测试,能进入说明端口开放成功
wls和本机的端口映射

netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 protocol=tcp listenport=本地的端口 connectport=映射的端口 connectaddress=wls的ip

配置文件

 upstream homeserver {
        server  192.168.1.3:8888;
        server  192.168.1.3:8889;
    }
    server {
        listen       9911;
        server_name  172.30.9.125;


        location ~ /user/ {
           proxy_pass http://homeserver;
           proxy_connect_timeout 10;
        }
    }

负载均衡方式

1.轮询
默认轮询,配置好监听端口和映射的服务即可

    server {
        listen       9911;
        server_name  172.30.9.125;
        #模糊匹配,含有user则映射到该链接
        location ~ /user/ {
           proxy_pass http://127.0.0.1:8888;
           proxy_connect_timeout 10;
        }
    }

2.权重

 upstream homeserver {
 #weight之间不能有空格,weight在1-100
        server  192.168.1.3:8888 weight=1;
        server  192.168.1.3:8889 weight=1;
    }
    server {
        listen       9911;
        server_name  172.30.9.125;
        location ~ /user/ {
           proxy_pass http://homeserver;
           proxy_connect_timeout 10;
        }
    }

3.ip_hash

 upstream homeserver {
 #根据请求ip进行映射,每次打到确定的机器
 		ip_hash;
        server  192.168.1.3:8888;
        server  192.168.1.3:8889;
    }
    server {
        listen       9911;
        server_name  172.30.9.125;
        location ~ /user/ {
           proxy_pass http://homeserver;
           proxy_connect_timeout 10;
        }
    }

4.fair

 upstream homeserver {
 #根据响应时间进行选择机器,但需要安装第三方
        server  192.168.1.3:8888;
        server  192.168.1.3:8889;
        fair;
    }
    server {
        listen       9911;
        server_name  172.30.9.125;
        location ~ /user/ {
           proxy_pass http://homeserver;
           proxy_connect_timeout 10;
        }
    }

nginx的高可用

需要两台机器上安装nginx,然后他们投放一个虚拟ip,客户端通过这个虚拟ip进行访问,并且两台机器上安装keep-alive并且编写脚本,如果某一台机器宕机后,keep-alive会将请求打到从节点上

nginx的原理

有一个master和多个worker进程,worker进程之间互相不影响,因此可以实现reload的热插拔

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值