ngnix基础知识

参考信息:https://www.kuangstudy.com/

nginx简介

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

正向代理和反向代理

安装在客户端的代理就是正向代理,例如使用vpn等
安装在服务器端的代理就是反向代理,
正向代理代理的对象是客户端,反向代理代理的对象是服务端
在这里插入图片描述

在这里插入图片描述

负载均衡

依次请求就是轮寻
在这里插入图片描述
在这里插入图片描述
iphash是解决sessio会话不共享的问题,确保某一客户请求数据始终是请求到一个固定的服务器上(不建议这样使用,建议中redis)
在这里插入图片描述

在这里插入图片描述

nginx安装

下载地址:https://nginx.org/en/download.html
在这里插入图片描述

windows环境下安装

windows将下载文件解压后即可直接使用
在这里插入图片描述
可以双击启动文件,也可以使用cmd命令启动
在这里插入图片描述
在这里插入图片描述

linux环境下安装

首先安装依赖环境
在这里插入图片描述

自动配置nginx
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
执行make进行构建
在这里插入图片描述
在这里插入图片描述
Linux中make, make install命令分别是什么,用法?
查看ngnix配置路径
在这里插入图片描述

启动ngnix
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

nginx常用命令

在这里插入图片描述
修改配置文件后就需要重新加载配置文件

防火墙开放端口

在这里插入图片描述

使用实战

配置文件
在这里插入图片描述
可进一步参考:Nginx配置使用详解
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置文件解释
########### 每个指令必须有分号结束。#################
#user administrator administrators; #配置用户或者组,默认为nobody nobody。
#worker_processes 2; #允许生成的进程数,默认为1
#pid /nginx/pid/nginx.pid; #指定nginx进程运行文件存放地址
error_log log/error.log debug; #制定日志路径,级别。这个设置可以放入全局块,http块,server块,级别以此为:debug|info|notice|warn|error|crit|alert|emerg
events {
accept_mutex on; #设置网路连接序列化,防止惊群现象发生,默认为on
multi_accept on; #设置一个进程是否同时接受多个网络连接,默认为off
#use epoll; #事件驱动模型,select|poll|kqueue|epoll|resig|/dev/poll|eventport
worker_connections 1024; #最大连接数,默认为512
}
http {
include mime.types; #文件扩展名与文件类型映射表
default_type application/octet-stream; #默认文件类型,默认为text/plain
#access_log off; #取消服务日志
log_format myFormat ‘ r e m o t e a d d r – remote_addr– remoteaddrremote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for’; #自定义格式
access_log log/access.log myFormat; #combined为日志格式的默认值
sendfile on; #允许sendfile方式传输文件,默认为off,可以在http块,server块,location块。
sendfile_max_chunk 100k; #每个进程每次调用传输数量不能大于设定的值,默认为0,即不设上限。
keepalive_timeout 65; #连接超时时间,默认为75s,可以在http,server,location块。

upstream mysvr {   
  server 127.0.0.1:7878;
  server 192.168.10.121:3333 backup;  #热备
}
error_page 404 https://www.baidu.com; #错误页
server {
    keepalive_requests 120; #单连接请求上限次数。
    listen       4545;   #监听端口
    server_name  127.0.0.1;   #监听地址       
    location  ~*^.+$ {       #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
       #root path;  #根目录
       #index vv.txt;  #设置默认页
       proxy_pass  http://mysvr;  #请求转向mysvr 定义的服务器列表
       deny 127.0.0.1;  #拒绝的ip
       allow 172.18.5.54; #允许的ip    
     # expires 设置客户端缓存
        #expires 1h;
        index index.php index.html; 
        # 资源重定向,如访问http://shop.devops.com/index.html后会被重写为访问http://shop.devops.com/index.php,permanent表示永久重定向
        rewrite /index.html /index.php permanent;
        
        # 资源重定向,$request_filename为nginx的内置变量,表示资源文件路径
        if (!-e $request_filename) {
            rewrite ^(.*)$ /index.php?s=/$1 last;
            break;
        }
    } 
    location ~ \.(js|css|jpg|png) {
        # 告诉客户端所有js,css,jpg,png文件都可以缓存1小时,不用重新在服务器下载
        expires 1h;
        # 防盗链实现,所有不是从shop.devops.com跳转过去访问js|css|jpg|png文件的都被拦截,返回404
        valid_referers shop.devops.com;
        if ($invalid_referer) {
            return 404;
        } 
    }
    # php解析
    location ~ \.php$ {
    #    root           html;
        fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值