云盘项目——Nginx

在学习云盘项目总结了笔记,并分享出来。有问题请及时联系博主:Alliswell_WP,转载请注明出处。

12-云盘项目- 03天  Nginx

目录:
一、学习目标
二、复习
三、Nginx
1、nginx介绍
2、正向代理和反向代理
3、nginx服务器的安装和测试
4、nginx操作相关的指令
5、nginx的配置文件
6、nginx静态网页的部署
7、域名和IP相关知识点
8、反向代理准备工作
9、反向代理的设置
10、负载均衡的设置
11、反向代理和负载均衡总结
12、shell中的变量

一、学习目标

二、复习

1、redis命令复习
2、redis的配置文件

三、Nginx

1、nginx介绍

 

在Firefox某个网页按“F12”可查看这些浏览器server对应的是否为Nginx?如:www.163.com

2、正向代理和反向代理

3、nginx服务器的安装和测试

安装测试:

(1)下载安装openssl-1.0.1t.tar.gz,解压后>./config,会生成Makefile,然后执行>make

然后执行>sudo make install 安装;

(2)下载安装pcre-8.40.tar.gz,解压后>./configure,会生成Makefile,然后执行>make

然后执行>sudo make install 安装;

(3)下载安装zlib-1.2.11.tar.gz,解压后>./configure,会生成Makefile,然后执行>make

然后执行>sudo make install 安装;

(4)下载安装nginx-1.10.1.tar.gz,解压后>./configure,会生成Makefile,然后执行>make

然后执行>sudo make install 安装;

(5)进入到安装目录>cd /usr/local/nginx/sbin;启动>sudo ./nginx;查看安装nginx服务器(Ubuntu)的IP地址,然后在wind上的浏览器输入IP地址访问:

注意:默认nignx默认是80端口,所以地址栏输入ip的时候端口可以默认不写!

4、nginx操作相关的指令

问题:如果不在安装目录,执行>sudo ./nginx 无法启动nginx,如果想启动,使用绝对路径>sudo /usr/local/nginx/sbin/nginx,如何解决?

创建软链接,放到$PATH的环境变量(如:/usr/bin/)下

>sudo ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

>sudo nginx(启动nginx)

>sudo nginx -s stop(暴力关闭,马上终止web服务器)

>sudo nginx(启动nginx)

>sudo nginx -s stop(温柔关闭,等待当前操作处理完成之后再停止)

>sudo nginx(启动nginx)

>sudo ./nginx -s reload(重新加载,不需要终止!)

5、nginx的配置文件

如何查看Linux下有哪些用户?>vi /etc/passwd

如何写高并发?如果自己写代码,只能用epoll;如果可以用第三方框架,使用libevent;(不能说使用多线程多进程、也不能说使用线程池,未说到点上!)

6、nginx静态网页的部署

练习:

>sudo nginx(启动nginx)

把html1.tar.gz放到Ubuntu的 /usr/local/nginx 目录下,解压缩(sudo tar zxvf html1.tar.gz):

进入demo目录:

在另一个终端切换目录(>cd /usr/local/nginx/conf),编辑nginx.conf(>vi nginx.conf):

>sudo ./nginx -s reload(重新加载,不需要终止!)

注意:

7、域名和IP相关知识点

8、反向代理准备工作

9、反向代理的设置

测试:

(1)分别在两台Linux下启动Nginx,然后分别在wind下先通过静态IP进行访问;

(2)在wind下用SwitchHosts 点击左侧“test”进行本地对host文件进行编辑:

SwitchHosts 下载:https://pc.qq.com/detail/8/detail_12168.html

左侧点击“当前系统 hosts”,查看是否生效:

(3)在wind下安装Nginx,然后拷贝nginx.conf.init为nginx.conf,在安装Nginx的目录下打开管理员窗口,然后执行>nginx.exe(启动nginx)

(4)在wind下打开nginx.conf(35行后全删,然后增加)进行修改:

    # 设置反向代理
    upstream robin.test{
        server 192.168.82.253:80;
    }
    upstream luffy.test{
        server 192.168.82.251:80;
    }
    # 配置要代理的服务器信息
    # luffy - 192.168.82.251
    server {
        # 监听的端口
        listen 80;
        # 通过什么域名去访问当前的web服务器
        server_name luffy.com;
        location / {
            #设置代理
            proxy_pass http://luffy.test;
        }
    }

    # 配置要代理的服务器信息
    # robin - 192.168.82.253
    server {
        # 监听的端口
        listen 80;
        # 通过什么域名去访问当前的web服务器
        server_name robin.com;
        location / {
            #设置代理
            proxy_pass http://robin.test;
        }
    }

(5)在wind下管理员窗口,然后执行>nginx.exe -s reload(重新加载,不需要终止!)

(6)在wind浏览器下输入luffy.test可以看到luffy下设置的静态网页,输入robin.test可以看到robin下设置的静态网页

10、负载均衡的设置

(1)在wind下打开nginx.conf(35行后全删,然后增加)进行修改:

    # 设置反向代理和负载均衡
    upstream linux.test{
        server 192.168.82.253:80 weight=5;
        server 192.168.82.251:80 weight=1;
    }
    # 配置要代理的服务器信息
    server {
        # 监听的端口
        listen 80;
        # 通过什么域名去访问当前的web服务器
        server_name localhost;
        location / {
            #设置代理
            proxy_pass http://linux.test;
        }
    }

(5)在wind下管理员窗口,然后执行>nginx.exe -s reload(重新加载,不需要终止!)

(6)在wind浏览器下输入locast可以看到luffy或者robin下设置的静态网页(如果不设置权重,默认二者机会相等)。

11、反向代理和负载均衡总结

注意:负载均衡是在反向代理的基础上做的!

12、shell中的变量

在学习云盘项目总结了笔记,并分享出来。有问题请及时联系博主:Alliswell_WP,转载请注明出处。

原文地址:https://www.cnblogs.com/Alliswell-WP/p/CPlusPlus_CloudDisk_Project03.html