0


windows下nginx的使用

文章目录

前言

windows下的使用有些不一样,但是基本上和linux下一致,只是部分命令会有些许差别, 具体的使用步骤如下

使用明细

1、进入nginx的目录

2、启动nginx

start nginx

会闪出一个黑窗口然后自动关闭

3、查看nginx是否启动

tasklist /fi “imagename eq nginx.exe”

4、重启nginx

nginx -s reload

5、关闭nginx

taskkill /f /t /im nginx.exe

配置说明

Nginx他是一款相当成熟的反向代理、负载均衡软件,他也提供了完整且丰富的内置变量,它极大增加了对Nginx网络行为的控制精细化。这些变量大部分都是在请求进入的时候进行解析的,并把他们缓存到请求中,方便下一次来获取使用。

语法规则:

location [=|~|~*|^~] /uri/ { … }

具体规则如下表:
模式含义location = /uri= 表示精确匹配,只有完全匹配上才能生效location ^~ /uri^~ 开头对URL路径进行前缀匹配,并且在正则之前。location ~ pattern开头表示区分大小写的正则匹配location * pattern开头表示不区分大小写的正则匹配location /uri不带任何修饰符,也表示前缀匹配,但是在正则匹配之后location /通用匹配,任何未匹配到其它location的请求都会匹配到,相当于switch中的default
前缀匹配时,Nginx 不对 url 做编码,因此请求为 /static/30%/abc,可以被规则 ^
/static/ /abc 匹配到(注意是空格)

多个 location 配置的情况下匹配顺序为:

首先精确匹配 =
其次前缀匹配 ^~
其次是按文件中顺序的正则匹配
然后匹配不带任何修饰的前缀匹配。
最后是交给 / 通用匹配
当有匹配成功时候,停止匹配,按当前匹配规则处理请求

注意:前缀匹配,如果有包含关系的时候,按最大匹配原则来进行匹配。比如当前缀匹配:location /dir1与 location /dir1/dir2,如有请求 http://localhost/dir1/dir2/file 将最终匹配到 location /dir1/dir2

禁止访问某个目录

location ~* .(txt|doc)${
root /data/dist;
deny all;
}

简易防火墙

     server {
    listen    80;
    server_name  localhost;
    location /sum {
        # 使用access阶段完成准入阶段处理
        access_by_lua_block {
            local black_ips = {["127.0.0.1"]=true}

            local ip = ngx.var.remote_addr
            if true == black_ips[ip] then
                ngx.exit(ngx.HTTP_FORBIDDEN)
            end
        };

        #处理业务
       content_by_lua_block {
            local a = tonumber(ngx.var.arg_a) or 0
            local b = tonumber(ngx.var.arg_b) or 0
            ngx.say("sum:", a + b )
        }
   }
}

运行测试的结果:
➜ ~ curl ‘192.168.1.104/sum?a=11&b=12’
sum:23
➜ ~
➜ ~
➜ ~ curl ‘127.0.0.1/sum?a=11&b=12’
403 Forbidden

403 Forbidden


openresty/1.9.3.1

由上面我们可以看到对IP进行了打印后进行了限制

参考了:
https://blog.csdn.net/qq_42112846/article/details/99767096

大家点击下方卡片,关注《coder练习生》

标签: nginx 运维

本文转载自: https://blog.csdn.net/ybb_ymm/article/details/131389765
版权归原作者 ybb_ymm 所有, 如有侵权,请联系我们删除。

“windows下nginx的使用”的评论:

还没有评论