温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

nignx 基本模块

发布时间:2020-10-25 14:03:41 来源:网络 阅读:269 作者:wx5a98a78793203 栏目:系统运维

1.nginx 常用命令

nginx -v #查看版本
nginx -V #查看编译选项
nginx -t #检查配置文件语法,加-c 可指定配置文件
nginx -s reload #重新载入配置文件,不重启

2.开启目录列表

在http{}段添加以下代码

autoindex on;  # 开启显示目录
autoindex_exact_size off;
#默认为on,显示出文件的确切大小,单位全是bytes,改为off后,显示出文件的大概大小,单位可能换算成kB或者MB或者GB,建议关闭
autoindex_localtime on;
#默认为off,显示的文件时间为GMT(世界世界)时间,改为on后,显示的文件时间为文件的服务器时间,建议开启

nignx 基本模块

3.监控nginx

监控nginx 需要 "--with-http_stub_status_module" 这个模块
nginx -V &>123.txt;cat 123.txt|grep status #使用这个命令能查看 这个模块是否被装载

开启,在server 段在添加一个" location"
location /status {
stub_status; #
access_log off;
}
参数说明


  active connections – 活跃的连接数量

  server accepts handled requests — 总共处理了107520387个连接 , 成功创建107497834次握手, 总共处理了639121056个请求

  每个连接有三种状态waiting、reading、writing

  reading —读取客户端的Header信息数.这个操作只是读取头部信息,读取完后马上进入writing状态,因此时间很短。

  writing — 响应数据到客户端的Header信息数.这个操作不仅读取头部,还要等待服务响应,因此时间比较长。

  waiting — 开启keep-alive后等候下一次请求指令的驻留连接.

  正常情况下waiting数量是比较多的,并不能说明性能差。反而如果reading+writing数量比较多说明服务并发有问题。

测试长短连接
将"keepalive_timeout" 配置成0(改为短连接) 重启,刷新status 页面
nignx 基本模块
#从上图可以看见,每次请求都建立一次tcp连接
在将"keepalive_timeout"配置改为10 重启,刷新status 页面
nignx 基本模块
#不断的刷新可以发现,请求数不断的增加,但是tcp连接数只有等过了10秒后再刷新才会增加

为什么要用长连接,长连接比短连接好在哪里
长连接实际上就是复用TCP连接,一个网页里一般有几十个资源,如果使用短连接,请求一个网页短连接要进行几十次的tcp 请求断开,极大的消耗了资源。
但是用长连接就不一样了,几十个请求都用同一个tcp连接,但是也不能让它永久的连接,这样会把服务器的端口端口撑满的,所以还有个超时时间,在超过这个时间没有新的请求就断开。

4.访问控制

应用范围,可在http server location 段生效
ip控制

   location /status {
             allow 192.168.0.0/24;
             deny all;
                         }

#上面表示,"/status"这个资源只有192.168.0.0/24 的网段有权限访问,匹配规则和acl一样 自上到下匹配,匹配到第一条后面的不在匹配

密码控制
        location /status {
             auth_basic 请输入你的帐号密码;
                         #提示信息,有的浏览器可能不显示
             auth_basic_user_file /etc/nginx/passwd;
                         #账号密码存放的的路径
}

#表示"/status" 访问这个url需要,输入密码
密码文件生成
yum install httpd-tools.x86_64 -y #安装http工具,生成密码文件需要这个软件
htpasswd -bc /etc/nginx/passwd cs1 123456# -c是生成密码文件,添加两个账号,添加第二个不要加-c。
#在" /etc/nginx/"这个路径生成一个"passwd"的文件,存放到一个账号cs1 密码123456

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI