ITPub博客

首页 > 数据库 > 数据库开发技术 > 优化网站性能:深入了解NGINX模块

优化网站性能:深入了解NGINX模块

原创 数据库开发技术 作者:yj11290301 时间:2024-03-25 13:51:47 0 删除 编辑

写在前面

我今天要和大家分享的是NGINX模块。在当前的网络技术环境中,NGINX作为一款高性能的HTTP和反向代理服务器,已经在全球范围内广泛使用。它以其占有内存少、稳定性高等特点,赢得了广大用户和开发者的一致好评。

什么是NGINX

让我们来了解一下什么是NGINX。NGINX是一款自由软件,由伊戈尔·赛索耶夫创建,最初是为了解决CGI脚本无法承受大量并发请求的问题而设计的。然而,经过多年的发展,NGINX已经从一个单纯的HTTP服务器,发展成为了一个完整的Web平台。

NGINX优点

NGINX的主要特点是其高性能。这是因为NGINX采用了事件驱动的异步非阻塞I/O模型,这使得它在处理大量并发连接时,可以有效地利用系统资源,提高处理效率。此外,NGINX还采用了多工作进程模式,每个工作进程都是独立的,互不干扰,这样可以大大提高系统的并发处理能力。

除了高性能之外,NGINX还具有高稳定性。NGINX采用了一种叫做“master-worker”的进程模型,主进程负责接收新的连接,然后将其分发给工作进程进行处理。这种模型可以确保即使某个工作进程出现问题,也不会影响到其他的连接。同时,NGINX还提供了热部署功能,可以在不停止服务的情况下,替换运行中的二进制文件和配置文件,这大大提高了系统的可用性。

调试安装NGINX模块

1, 挂载光盘


2, rpm 安装



3.启动



4.查看NGINX主配置文件


5.测试访问NGINX

6.查看主配置文件





7.nginx新版本的配置文件



8.使用域名搭建一台虚拟主机



nginx新版本的配置文件  全局配置文件:/etc/nginx/nginx.conf  虚拟主机配置:/etc/nginx/conf.d/*.conf  例子1:使用域名搭建一台虚拟主机      mkdir  /www      复制网页代码到/www目录下      vim /etc/nginx/conf.d/      添加:      server {        listen       80;        server_name          location / {          root   /www;          index  index.html index.htm;        }        }      保存退出      systemctl restart nginx       客户端修改/etc/hosts、访问测试









nginx目录索引(autoindex自动索引模块)

nginx默认不起用目录索引,更不允许列出网站目录提供下载。  Syntax:  autoindex on | off;        索引功能的开或关  Default:  autoindex off;        默认关闭  Context:  http, server, location    场景:全局、某个虚拟主机、某个虚拟主机的目录    例子:在www网站下,创建download下载目录,索引显示  mkdir /www/download  复制文件到/www/download目录下  vim  /etc/nginx/conf.d/  在server字段中添加:  location /download {            root   /www;            autoindex on;        启用索引显示            charset utf-8,gbk;        字符编码为中文            autoindex_exact_size on;      显示文件大小                autoindex_localtime on;      显示文件创建时间      }  保存退出



nginx状态监控(status模块)

Syntax:  stub_status;          启用状态化追踪  Default:  —              默认关闭  Context:  server, location      场景:
例子:针对www网站,启用状态化追踪 vim /etc/nginx/conf.d/ 在server字段中添加: location /status { stub_status; 启用状态化追踪 access_log off; 关闭status的日志记录 } 保存退出

Active connections: 1           当前活跃的连接数  server  accepts   19         当前的总tcp连接数    handled   19         成功的连接数    requests  486        总HTTP请求数

nginx基于ip的访问控制(access模块)

  例子:仅允许内部网段或vpn访问status  vim  /etc/nginx/conf.d/  修改为:     location /status {      stub_status;      access_log off;      allow 192.168.8.0/24;  仅允许1.0网段访问      deny all;        拒绝其他所有    }




nginx基于用户的访问控制(auth模块)



例子:设置访问/status,用户密码验证  yum -y install httpd-tools  htpasswd -b -c /etc/nginx/.auth_conf admin 123456  vim  /etc/nginx/conf.d/  修改为:     location /status {      stub_status;      access_log off;      auth_basic           "input your passwd:";  用户验证启用描述      auth_basic_user_file /etc/nginx/.auth_conf;  用户验证文件路径    }







微信号 | a2459155652
商务合作|学术交流|简历指导


扫码关注
云计算运维学习交流群

原文作者:网络豆云计算学堂;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2023-09-15

  • 博文量
    76
  • 访问量
    33957