Nginx知识

nginx 精简的配置文件

复制代码
worker_processes  1;
# 可以理解为一个内核一个worker
# 开多了可能性能不好

events {
    worker_connections  1024;
}
# 一个 worker 可以创建的连接数
# 1024 代表默认一般不用改

http {
    include       mime.types;
    # 代表引入的配置文件
    # mime.types 在 nginx.conf 同级目录下
    # 给浏览器看的,让浏览器知道返回的是啥类型,便于好解析

    default_type  application/octet-stream;
    # 如果上面的 mime.types 匹配不到,就采用这个默认的

    sendfile        on;
    # 代表返回的数据是否走中间商,还是直接走网卡返回
    # 中间商就是 nginx 的内存
    
    keepalive_timeout  65;
    # 连接超时数

    # 一个服务器配置
    server {
        listen       80; # 监听的端口
        server_name  localhost; # 配置域名
        # 上面两个的组合要唯一,不然出问题
        
        # 上面两个匹配到了,匹配下面
        location / {
            root   html; # html文件夹里面的意思
            index  index.html index.htm;
        }
        
        # 出现错误了, 状态码,处理根路径 走下面的进行匹配
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

虚拟主机

因为服务器配置过剩产生的

一个 nginx 可以配置多个域名

复制代码
# 直接复制一个 server 然后改一下就行了
# 按从上往下匹配如果匹配到了就结束
# 通配符匹配 * # 看第二个 server
# 在 server_name 后面可以写多个
# 可以使用正则

http {
    server {
        listen       80; # 监听的端口
        server_name  localhost; # 配置域名

        location / {
            root   html; # html文件夹里面的意思
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
    server {
        listen       80; # 监听的端口
        server_name  *.hello.*; # 配置域名

        location / {
            root   html; # html文件夹里面的意思
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

域名解析相关架构

二级域名

短网址:就是服务器用数据库存一个key和value,value为真实地址,key随便,返回给用户,节省空间。

httpDns:用于app和C/S架构,好像可以避免域名劫持的风险。

反向代理与正向代理

按角色来说的

就是服务器和用户之间要通过代理, 如果把服务器和代理绑在一起就是反向(理解在一个机房),用户和服务器在一起就是正向(家和路由器)

nginx作为反向代理有带宽瓶颈,用户请求过nginx然后与后端交互,后端处理返回给nginx,会产生瓶颈(nginx),可以使用DR架构,就是服务器直接返回给用户(通过机房网关)。

负载均衡

一定要考虑流量倾斜问题

复制代码
# 下面的那个网址
# 配置比重可以实现负载均衡
httpsdeom = {
    server 网址 weight=?[down # 代表当前机子挂了,这个参数基本不咋用,没啥用];
    server 网址 weight=?[backup # 代表这个机子作为备用机子];
}

server {
        listen       80; # 监听的端口
        server_name  localhost; # 配置域名

        location / {
            proxy_pass 网址(域名);
            # 下面没用了
            # root   html; # html文件夹里面的意思
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

未完待续

相关推荐
互联网搬砖老肖6 小时前
运维打铁: MongoDB 数据库集群搭建与管理
运维·数据库·mongodb
Antonio9156 小时前
【音视频】HLS简介与服务器搭建
运维·服务器·音视频
艾伦_耶格宇7 小时前
【docker】-1 docker简介
运维·docker·容器
R.X. NLOS8 小时前
VS Code远程开发新方案:使用SFTP扩展解决Remote-SSH连接不稳定问题
运维·服务器·ssh·debug·vs code
cuijiecheng20188 小时前
Ubuntu下布署mediasoup-demo
linux·运维·ubuntu
jingyu飞鸟12 小时前
linux系统源代码安装apache、编译隐藏版本号
linux·运维·apache
2401_8582861113 小时前
OS15.【Linux】gdb调试器的简单使用
linux·运维·服务器·开发语言·gdb
c30%0014 小时前
内网渗透——红日靶场五
运维·服务器
zjw_rp15 小时前
centos停止维护后更换yum源
linux·运维·centos
宇钶宇夕15 小时前
EPLAN 电气制图:建立自己的部件库,添加部件-加SQL Server安装教程(三)上
运维·服务器·数据库·程序人生·自动化