当前位置: 首页 > news >正文

八冶建设集团有限公司网站深圳推广平台深圳网络推广

八冶建设集团有限公司网站,深圳推广平台深圳网络推广,响应式网站一般做几个版本,伪静态网站搬迁文章目录 一、Nginx 概述1.什么是 Nginx2.Nginx 的特点3.Nginx 应用场景 二、Nginx 服务基础1.编译安装 Nginx 服务1.1 布置环境1.2 安装依赖包1.3 创建运行用户、组1.4 编译安装 2.Nginx 的运行控制2.1 检查配置文件2.2 启动、停止 Nginx2.3 日志分割以及升级 Nginx 服务2.4 添… 文章目录 一、Nginx 概述1.什么是 Nginx2.Nginx 的特点3.Nginx 应用场景 二、Nginx 服务基础1.编译安装 Nginx 服务1.1 布置环境1.2 安装依赖包1.3 创建运行用户、组1.4 编译安装 2.Nginx 的运行控制2.1 检查配置文件2.2 启动、停止 Nginx2.3 日志分割以及升级 Nginx 服务2.4 添加 Nginx 系统服务方法一方法二 3.配置文件 nginx.conf3.1 全局配置3.2 I/O事件配置3.3 HTTP配置3.4 日志文件格式设定remote_addr 和 http_x_forwarded_for 的区别 3.5 location常见配置指令 三、Nginx访问控制1.访问状态统计1.1 查看已经安装模块1.2 修改配置文件1.3 重启服务访问测试1.4 判断服务器并发量 2. 一、Nginx 概述 1.什么是 Nginx Nginx 是开源、高性能、高可靠的 Web 和反向代理服务器而且支持热部署几乎可以做到 7 * 24 小时不间断运行即使运行几个月也不需要重新启动还能在不间断服务的情况下对软件版本进行热更新。性能是 Nginx 最重要的考量其占用内存少、并发能力强、能支持高达 5w 个并发连接数最重要的是 Nginx 是免费的并可以商业化配置使用也比较简单。 2.Nginx 的特点 Nginx 具有高并发、高性能的特性系统资源消耗低相比于 Apache 更加轻量级Nginx 专为性能优化而开发性能是其最重要的考量实现上非常注重效率Nginx支持热部署。它的启动特别容易并且几乎可以做到7*24不间断运行即使运行数个月也不需要重新启动。你还能够在不间断服务的情况下对软件版本进行进行升级对 HTTP 并发连接的处理能力高单台服务器可支持30000 ~ 50000个并发请求在实际生产环境中约20000~30000并发连接数。 Nginx 和 Apache 的差异 轻量级Nqinx比Apache占用更少的内存及资源。 静态处理Nginx静态处理性能比Apache高。 Nginx可以实现无缓存的反向代理加速提高网站运行速度。 Nginx的性能和可伸缩性不依赖于硬件Apache依赖于硬件。 Nginx支持热部署启动速度迅速可以在不间断服务的情况下对软件版本或者配置进行升级。 Nginx是异步进程多个连接可以对应一个进程Apache是同步多进程一个连接对应一个进程。 Nginx高度模块化编写模块相对简单且组件比Apache少。 高并发下nginx能保持低资源低消耗高性能Nqinx配置简洁Apache配置复杂。 3.Nginx 应用场景 http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。虚拟主机。可以实现在一台服务器虚拟出多个网站例如个人网站使用的虚拟机。反向代理负载均衡。当网站的访问量达到一定程度后单台服务器不能满足用户的请求时需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载不会应为某台服务器负载高宕机而某台服务器闲置的情况。nginz 中也可以配置安全管理。比如可以使用Nginx搭建API接口网关对每个接口服务进行拦截。 二、Nginx 服务基础 1.编译安装 Nginx 服务 1.1 布置环境 关闭防火墙将安装nginx所需软件包传到/opt目录下。安装包下载网址nginx中文官网。 ###关闭防火墙及开机自启功能 [rootlocalhost ~]# systemctl stop firewalld.service [rootlocalhost ~]# systemctl disable firewalld.service Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [rootlocalhost ~]# setenforce 0 [rootlocalhost ~]# cd /opt/ ###上传安装包 [rootlocalhost opt]# rz -E rz waiting to receive. [rootlocalhost opt]# ls nginx-1.24.0.tar.gz rh1.2 安装依赖包 nginx的配置及运行需要pcre、zlib、openss1等软件包的支持因此需要安装这些软件的开发包以便提供相应的库和头文件。 [rootlocalhost ~]# yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c make1.3 创建运行用户、组 创建运行用户、组Nginx服务程序默认以 nobody身份运行建议为其创建专门的用户账号以便更准确地控制其访问权限 ###创建一个名为nginx的用户不建立宿主目录禁止登录到Shell环境中 [rootlocalhost ~]# useradd -M -s /sbin/nologin nginx1.4 编译安装 [rootlocalhost ~]# cd /opt/cd / opt [rootlocalhost opt]# tar zxvf nginx-1.24.0.tar.gz [rootlocalhost opt]# ls nginx-1.24.0 nginx-1.24.0.tar.gz rh[rootlocalhost opt]# cd nginx-1.24.0/ [rootlocalhost nginx-1.24.0]# ls auto CHANGES.ru configure html Makefile objs src CHANGES conf contrib LICENSE man README [rootlocalhost nginx-1.24.0]# ./configure \ --prefix/usr/local/nginx \ #指定nginx的安装路径 --usernginx \ #指定用户名 --groupnginx \ #指定组名 --with-http_stub_status_module #启用http stub_status_module模块以支持状态统计[rootlocalhost nginx-1.24.0]# make -j2 make install为了使 Nginx 服务器的运行更方便可以为主程序 nginx 创建链接文件以便管理员直接执行nginx 命令就可以调用 Nginx 的主程序 [rootlocalhost nginx-1.24.0]# cd /usr/local/nginx/ [rootlocalhost nginx]# ls conf html logs sbin [rootlocalhost nginx]# cd sbin/ [rootlocalhost sbin]# ls nginx ###让系统识别nginx的操作命令 [rootlocalhost sbin]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ ###查看版本信息 [rootlocalhost sbin]# ./nginx -v nginx version: nginx/1.24.0 ###查看版本信息以及配置项 [rootlocalhost sbin]# nginx -V nginx version: nginx/1.24.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) configure arguments: --prefix/usr/local/nginx --usernginx --groupnginx --with-http_stub_status_module2.Nginx 的运行控制 2.1 检查配置文件 检查配置文件是否配置正确和语法是否正确。若要检查其他位置的配置文件可以使用-c选项来指定路径。 [rootlocalhost sbin]# nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful2.2 启动、停止 Nginx 直接运行 nginx 即可启动 Nginx 服务器这种方式将使用默认的配置文件若要改用其他配置文件需添加-c 配置文件路径选项来指定路径。这里需要注意如果服务器中已装有 httpd 等其他 Web 服务软件应修改端口或停用、卸载以免造成冲突。 一般习惯建议使用路径来指定文件启动nginx因为在升级过程中系统需要指定用户用指定路径来运行nginx [rootlocalhost sbin]# /usr/local/nginx/sbin/nginx [rootlocalhost sbin]# ps -aux | grep nginx root 14711 0.0 0.0 20584 620 ? Ss 16:07 0:00 nginx: master process /usr/local/nginx/sbin/nginx nginx 14712 0.0 0.0 23112 1380 ? S 16:07 0:00 nginx: worker process root 14812 0.0 0.0 112824 980 pts/1 R 16:18 0:00 grep --colorauto nginxnginx有两种进程分别是master、worker。master进程是用来管理worker进程以及在启动nginx时用来读取配置文件的而worker进程使用来处理用户请求。 查看 nginx 的 PID 号 除了一般的netstat -lntp | grep nginx、ss -lntp | grep nginx、ps aux | grep nginx的常规方式还可以通过nginx的PID文件查看PID号。一般大部分的应用程序在启动过程中都会生成PID文件。 [rootlocalhost sbin]# cat /usr/local/nginx/logs/nginx.pid 14711通过 kill 命令发送 HUP 信息表示重载配置发送 QUIT 信息表示退出进程发送 kill 信息表示杀死进程。当Nginx 进程运行时PID 号默认存放在 logs/ 目录下得 nginx.pid 文件中因此若使用 kill 命令可以根据 PID 号进行控制。 #结束进程 kill -3 PID号 kill -s QUIT PID号 #-s选项表示指定信号种类 killall -3 nginx killall -s QUIT nginx #等同于-3#重载配置 kill -1 PID号 kill -s HUP PID号 killall -1 nginx killall -s HUP nginx #等同于-1注意这里谨慎使用 kill -9 选项可能导致数据丢失而 kill -3 并不会影响程序运行。 2.3 日志分割以及升级 Nginx 服务 #日志分制,重新打开日志文件 kill -USR1 PID号 #平滑升级 ki1l -USR2 PID号如果想要升级nginx的版本除了平滑升级外还可以使用新版本升级。 ###需要解压新版本的压缩包 tar -zxvf nginx-1.xx.xx.tar.gz ###进入新版本的配置目录下 cd nginx-1.xx.xx ###加载新的模块 ./configure \ -prefix/usr/local/nginx \ --usernginx \ --groupnginx \ --with-http_stub_status_module --with-http_ssl_module ###进行编译安装 make ###将原来的可执行文件进行备份防止升级失败破坏文件 mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_old cp objs/nginx /usr/local/nginx/sbin/nginx make upgrade #要保证当前 nginx进程是通过 /usr/locaL/nginx/sbin/nginx启动的而不是通过查找环境变量中那个nginx命令启动的 #或者先killall nginx 再/usr/local/nginx/sbin/nginx2.4 添加 Nginx 系统服务 方法一 编写脚本来获取nginx系统服务 [rootlocalhost ~]# cd /etc/init.d/ [rootlocalhost init.d]# vim /etc/init.d/nginx #!/bin/bash ###通过chkconfig调用到系统服务当中设置开机自启动以及第22个启动和第88个关闭 #chkconfig: 35 22 88 ###设置相关描述 #description:Nginx Service Control Script ###获取nginx路径 COM/usr/local/nginx/sbin/nginx ###获取nginx进程的pid PID/usr/local/nginx/logs/nginx.pid ###获取执行脚本后面跟着的第一个位置变量 case $1 in start)netstat -lntp | grep nginxif [ $? -eq 0 ]thenecho nginx 已经启动...elseecho nginx 正在启动...$COMfi ;; stop)kill -s QUIT $(cat $PID) ;; restart)$0 stop$0 start ;; reload)kill -s HUP $(cat $PID) ;; status)netstat -lntp | grep nginxif [ $? -eq 0 ]thenecho nginx 已经启动...elseecho nginx 没有启动...fi ;; *)echo Usage: $0 {start|stop|restart|reload|status} esac给脚本赋执行权限以及执行脚本 [rootlocalhost init.d]# chmod x /etc/init.d/nginx ###停止nginx [rootlocalhost init.d]# ./nginx stop [rootlocalhost init.d]# ps -aux | grep nginx root 73048 0.0 0.0 112824 976 pts/1 R 17:04 0:00 grep --colorauto nginx ###启动nginx [rootlocalhost init.d]# ./nginx start nginx 正在启动... ###查看nginx [rootlocalhost init.d]# ./nginx status tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 73084/nginx: master nginx 已经启动... [rootlocalhost init.d]# ps -aux | grep nginx root 73084 0.0 0.0 20584 620 ? Ss 17:07 0:00 nginx: master process /usr/local/nginx/sbin/nginx nginx 73085 0.0 0.0 23112 1380 ? S 17:07 0:00 nginx: worker process root 73098 0.0 0.0 112824 980 pts/1 R 17:07 0:00 grep --colorauto nginx 方法二 添加nginx为nginx.service服务 [rootlocalhost ~]# cd /usr/lib/systemd/system/ [rootlocalhost /usr/lib/systemd/system]# ls #里面都是启动脚本 abrt-ccpp.service plymouth-poweroff.service abrtd.service plymouth-quit.service abrt-oops.service plymouth-quit-wait.service abrt-pstoreoops.service plymouth-read-write.service .......配置nginx.service启动脚本 [rootlocalhost /usr/lib/systemd/system]#vim nginx.service [Unit] Descriptionnginx #服务的描述 Afternetwork.target #描述服务类别设置依赖关系 [Service] #服务管理参数 Typeforking #后台运行类型 PIDFile /usr/local/nginx/logs/nginx.pid #PID文件位置 ExecStart/usr/local/nginx/sbin/nginx #启动服务 ExecrReload/bin/kill -s HUP $MAINPID #根据PID重载配置 ExecrStop/bin/kill -s QUIT $MAINPID #根据PID终止进程其中MAINPID是获取主进程的PID PrivateTmptrue #是否给服务配置独立临时空间 [Install] #服务安装相关设置 WantedBymulti-user.target #设置在多用户环境环境当中安装服务加载服务并启动 ###加载新的 unit 配置文件 [rootlocalhost system]# systemctl daemon-reload [rootlocalhost system]# systemctl start nginx.service [rootlocalhost system]# ps -aux | grep nginx root 75742 0.0 0.0 20584 616 ? Ss 19:21 0:00 nginx: master process /usr/local/nginx/sbin/nginx nginx 75743 0.0 0.0 23112 1380 ? S 19:21 0:00 nginx: worker process root 75775 0.0 0.0 112824 980 pts/1 S 19:25 0:00 grep --colorauto nginx3.配置文件 nginx.conf 在 Nginx 服务器的主配置文件 /usr/local/nginx/conf/nginx.conf 中包括全局配置、I/O 事件配置和 HTTP 配置这三大块内容配置语句的格式为 关键字 值;(末尾以分号表示结束)以#开始的部分表示注释。 ###过滤出配置文件中没有#开头以及空行 [rootlocalhost conf]# cat nginx.conf | egrep -v ^$|^\s*# worker_processes 1; events {worker_connections 1024; } http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;server {listen 80;server_name localhost;location / {root html;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location /50x.html {root html;}} }注意如果需要修改配置文件建议先备份一个文件。 nginx配置文件主要是由以下几个构成的 模块作用全局块全局配置,对全局生效events块配置影响Nginx服务器与用户的网络连接;http块配置代理缓存日志定义等绝大多数功能和第三方模块的配置;server块配置虚拟主机的相关参数一个http 块中可以有多个server块location块用于配置匹配的 uriupstream配置后端服务器具体地址负载均衡配置不可或缺的部分。 3.1 全局配置 由各种配置语句组成不使用特定的界定标记。全局配置部分包括 Nginx 服务的运行用户、工作进程数、错误日志、PID存放位置等基本设置。 [rootlocalhost ~]# vim /usr/local/nginx/conf/nginx.conf [rootlocalhost /usr/local/nginx/conf]#cat nginx.conf #user nobody; #运行用户若编译时未指定则默认为nobody worker_processes 1; #工作进程数量一般设置为和cPu核数一样;设置为autonginx将会自己获取这个数值 #error_log logs/error.log; #错误日志存放位置 #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; #PID文件的位置 worker_rlimit_nofile 60000; #设置所有worker进程最大可以打开的文件数默认为10243.2 I/O事件配置 1使用 events { } 界定标记用来指定 Nginx 进程的 I/O 相应模型每个进程的连接数等设置默认为1024。 events {use epoll; #使用epoll I/O模型2.6及以上版本的系统内核建议使用epoll模型以提高性能worker_connections 60000 ; #每个进程处理60000个连接multi_accept on; #是否一次性将监听到的连接全接收进来默认为off关闭时一次接收一条连接accept_mutex on; #默认为on开启时表示以串行方式接入新连接否则将通报给所有worker。这可能会浪费资源并产生不可预计的后果例如惊群问题 }知识点 如提高每个进程的连接数还需执行ulimit -n 65535命令临时修改本地每个进程可以同时打开的最大文件数。在Linux平台上在进行高并发TCP连接处理时最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制。这是因为系统为每个TCP连接都要创建一个socket句柄每个socket句柄同时也是一个文件句柄epoll是Linux内核为处理大批句柄而作改进的poll是Linux 下多路复用IO接口select/poll的增强版本它能显著的减少程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。worker_prcesses的值和work_connections的值决定了最大并发数量最大并发数计算方式为: worker_prcesses*work_connections。但在反向代理场景中计算方法不同因为nginx既要维持和客户路的连接又要维持和后端服务器的连接因此处理一次连接要占用2个连接所以最大并发数计算方式为: worker_prcesses*work_connections/2。 2linux 系统对文件打开的数量有最大的限制通常设置为1024这个数值很容易会达到从而造成系统程序或者系统的瓶颈。 如果想要提高每个进程的连接数还需执行 ulimit -n 65535 命令临时修改本地每个进程可以同时打开的最大文件数。 ###查看当前进程可以打开的最大文件数open files [rootlocalhost /usr/local/nginx/conf]# ulimit -a ... pending signals (-i) 14959 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 ... ###修改当前进程可以打开文件的最大数量 [rootlocalhost /usr/local/nginx/conf]# ulimit -n 1024 ###查看当前系统的最大文件数 [rootnginx /usr/local/nginx/conf]# cat /proc/sys/fs/file-max 378925 ###通过命令ulimit -n 65535可以进行更改 [rootlocalhost /usr/local/nginx/conf]# ulimit -a 65535 [rootlocalhost /usr/local/nginx/conf]# ulimit -n 65535如果想要永久修改最大连接数可以在/etc/security/limits.conf文件中修改。 ###在最后一行添加如下内容 ###第一列为用户和组 ###第二列为磁盘限额软硬限制 ###第三列为项目 ###第四列为相应项目的数量 [rootlocalhost conf]# vim etc/security/limits.conf * soft nofile 65535 * hard nofile 65535其中nofile是指文件描述符。如果还想修改用户可以打开的最大进程数可以使用nproc参数。如果想要锁定内存大小可以使用memlock参数。注意这些参数配置的文件需要重启系统才能生效。 3.3 HTTP配置 1使用 http { } 界定标记包括访问日志、HTTP 端口、网页目录、默认字符集、连接保持以及虚拟Web主机、PHP解析等一系列设置其中大部分配置语句都包含在子界定标记 server { } 内。 http {##文件扩展名与文件类型映射表include mime. types;##默认文件类型default_type application/octet-stream;##日志格式设定#log_format main Sremote addr - $remote user [$time local] $request # $status $body_bytes_sent $http referer # $http user agent shttp x forwarded for;##访问日志位置#access_log logs/access.logmain;##开启文件传输模式sendfile on; #只在sendfile on时有效。调用tcp_cork方法让数据包不会马上传送出去等到数据包最大时一次性的传输出去这样有助于解决网络堵赛。默认为off。#tcp_nopush on;##连接保持超时时间单位是秒#keepalive_timeout 0;keepalive_timeout 65;##gzip模块设置,设置是否开启gzip压缩输出#gzip on;##web服务的监听配置server {##监听地址及端口listen 80;##站点域名可以有多个,用空格隔开server_name www.kgc.com;##网页的默认字符集charset utf-8;##根目录配置location / {##网结根目录的位置/usr/local/nginx/htmlroot html;##默认首页文件名index index.html index.php;}##内部错误的反馈页面error_page 500 502 503 504 /50x.html;##错误页面配置location /50x.html {root html;}} }2验证能否通过ip地址访问nginx网站 [rootlocalhost /usr/local/nginx/conf]# cd /usr/local/nginx/html/ ###查看是否有错误网页和正常网页文件 [rootlocalhost /usr/local/nginx/html]# ls 50x.html index.html [rootlocalhost /usr/local/nginx/html]# systemctl stop nginx.service [rootlocalhost /usr/local/nginx/html]# systemctl start nginx.service3.4 日志文件格式设定 [rootlocalhost logs]# cat /usr/local/nginx/logs/access.log 192.168.145.1 - - [31/May/2023:21:20:30 0800] GET / HTTP/1.1 200 615 - Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 192.168.145.1 - - [31/May/2023:21:20:30 0800] GET /favicon.ico HTTP/1.1 404 555 http://192.168.145.45/ Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36用第一行的日志语句来进行解释各个字段的含义 192.168.145.1客户端地址。 - -用户名。 31/May/2023:21:20:30 0800访问时间和时区。 GET / HTTP/1.1记录请求方法、请求路径、请求协议。/favicon.ico是浏览器访问会自带文件它是存储网站前面的log图标。 200响应状态码。 615记录给客户端发送的文件大小。 -可以记录用户是从哪个链接访问过来的。如果是直接访问的话是不显示的可以用来判断防盗链。 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36记录客户浏览器的相关信息。 参数含义$remote_addr客户端的ip地址代理服务器显示代理服务ip地址$remote_user用于记录远程客户端的用户名称一般为-$time_local用于记录访问时间和时区$request用来记录请求的uri与http协议$status用来记录响应状态码例如200成功、404页面找不到等。$body_bytes_sent给客户端发送的文件主体内容字节数$http_user_agent记录客户浏览器的相关信息$http_x_forwarded_for可以记录客户端IP通过代理服务器来记录客户端的ip地址$http_referer可以记录用户是从哪个链接访问过来的 remote_addr 和 http_x_forwarded_for 的区别 通常web服务器放在反向代理的后面这样就不能获取到客户的IP地址了通过$remote _addr拿到的IP地址是反向代理服务器的IP地址。反向代理服务器在转发请求的http头信息中可以增加http_x_forwarded_for信息用以记录原有客户端的IP地址和原来客户端的请求的服务器地址。 简单来说比如客户访问服务器中间有个代理服务器那么$remote _addr获取的IP地址是客户端发来的而http_x_forwarded_for会获取客户端发给代理服务器的IP地址以及代理服务器发送给服务器的IP地址。 3.5 location常见配置指令 location / {##网结根目录的位置/usr/local/nginx/htmlroot html;##默认首页文件名index index.html index.php;}在location模块下可以添加以下参数进行文件目录配置 root、 alias、 proxy_passroot根路径配置root /var/www/html请求www.kgc.com/test/1.html会返回文件/var/www/html/test/1.htmlalias 别名配置alias /var/www/html请求www.kgc.com/test/1.html会返回文件/var/www/html/1.htmlproxy _pass(反向代理配置 三、Nginx访问控制 1.访问状态统计 1.1 查看已经安装模块 Nginx内置了 HTTP_STUB_STATUS 状态统计模块用来反馈当前得 Web 访问情况配置编译参数时可添加--with-http_stup_status_dodule 来启用此模块支持。 ###查看已安装的 Nginx 是否包含 HTTP STUB STATUS 模块 [rootlocalhost ~]# /usr/local/nginx/sbin/nginx -V nginx version: nginx/1.24.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) configure arguments: --prefix/usr/local/nginx --usernginx --groupnginx --with-http_stub_status_module [rootlocalhost ~]# cd /opt/nginx-1.24.0/auto/ ###可查看 nginx是否安装了HTTP_STUB_STATUS [rootlocalhost auto]# cat options | grep HTTP_STUB_STATUS HTTP_STUB_STATUSNO--with-http_stub_status_module) HTTP_STUB_STATUSYES 1.2 修改配置文件 要使用 Nginx 的状态统计功能除了启用内建模块以外还需要修改 nginx.conf 配置文件指定访问位置并添加stub_status 配置代码。修改之前进行备份 [rootlocalhost ~]# cd /usr/local/nginx/conf [rootlocalhost conf]# vim /usr/local/nginx/conf/nginx.conf ..... http { .....server {listen 80;server name www.kgc.com;charset utf-8;location / {root html;index index.html index.php;}##添加 stub status 配置## location /status { #访问位置为/statusstub_status on; #打开状态统计功能access_log off; #关闭访问/status目录下页面的访问日志记录}} }1.3 重启服务访问测试 [rootlocalhost conf]# systemctl restart nginx.service浏览器访问 http://192.168.145.45/statusActive connections表示当前的活动连接数即当前与 Nqinx 服务器建立的连接数。 server accepts handled requests表示已经处理的连接信息。 2 2 1服务器已接收的连接数服务器成功处理的连接数服务器累计处理的总请求数(在保持连接模式下请求数量可能会大于连接数量)。 Reading表示当前正在从客户端读取数据的连接数。 Writing表示当前正在从客户端写入数据的连接数。 Waiting表示当前空闲等待请求的连接数。1.4 判断服务器并发量 编写脚本用来判断 [rootlocalhost ~]# cat test.sh #!/bin/bash while true doACTIVECONN$(curl -Ls 192.168.145.45/status | awk /Active connections/{print $3})if [ $ACTIVECONN -ge 2 ]then echo 警告当前并发连接过高当前并发连接数为:$ACTIVECONN 。fisleep 10 done执行脚本并打开多个浏览器访问192.168.145.45/status ###将脚本放在后台运行 [rootlocalhost ~]# ./test.sh [1] 78016 [rootlocalhost ~]# curl -Ls 192.168.145.45/status Active connections: 1 server accepts handled requests10 10 9 Reading: 0 Writing: 1 Waiting: 0 [rootlocalhost ~]# 警告当前并发连接过高当前并发连接数为:3 。 警告当前并发连接过高当前并发连接数为:3 。2.
http://www.hkea.cn/news/14389874/

相关文章:

  • 天津市网站建设公司做网站都要学什么
  • 成都网站设计策划免费温州网站建设方案
  • 做买衣服的网站有哪些给几个手机网站
  • 济南 网站建设 域名注册做网站在哪里做比较好
  • 用服务器如何做网站网站备案被注销了怎么办
  • python 网站开发神器灌云网站制作
  • wordpress 支持mkv播放器网页优化最为重要的内容是
  • 南宁企业建站系统模板aaaa景区网站建设标准
  • 网站建设制作报价asp.net 4.0网站开发
  • 青白江做网站的公司淘宝优惠券网站怎么做
  • 设计感十足的网站新网站优化
  • 从网站栏目看网站功能实训网站开发目的
  • 服装图案素材网站wordpress调用页面标题
  • 西宁网站建设报价壹君博贴心凡客优品
  • 安装网站程序的流程东南亚做网站 什么语言
  • 硬件开发工程师工资做网站优化找谁
  • 网站备案一次就可以了吧广东粤建设计院网站
  • 建个人网站能赚钱吗网站配色
  • 本地dedecms网站大连金州区房价
  • 织梦网站主页代码在后台怎么改怎么查网站开发者联系方式
  • 网站备案条件广州户外拓展
  • 网站资源做缓存晋城市住建设局网站
  • 做视频类型的网站wordpress导出数据
  • 做民宿上几家网站好怎么注册公司教程
  • 企业信息化建设网站做网站维护需要什么证书
  • 网站内链规划公司网站备案多少钱
  • 商城网站开发解决方案wordpress html主页
  • 网站移动端生成器个人所得税app下载
  • wix怎么做网站教程网页制作自我介绍模板
  • 医院做网站青岛seo推广公司