Nginx的网站服务

news/2024/5/5 20:41:11

Nginx网站服务

  • 一、Nginx与apache的差异
  • 二、编译安装Nginx服务
  • 三、Nginx命令
  • 四、向系统添加nginx服务
  • 五、nginx配置文件
  • 六、http块的配置

一、Nginx与apache的差异

nginx相对于apache的优点:
轻量级,同样是web服务,比apache占用内存更少及资源;高并发,ngnix处理请求是异步非塞的,而apache则是阻塞型的,在高并发下nginx能保持低资源低消耗高性能,高度模块化的设计
编写模块相对简单,社区活跃,各种高性能模块出品迅速。

apache相对于nginx的优点:
rewrite比nginx的rewrite强大,模块超多,基本想到的都可以找到,少bug,nginx的bug相对较多;超稳定
存在就算理由,一般来说,需要性能的web服务,用nginx。如果不需要性能只求稳定,那就apache,nginx处理动态请求是弱项,一般动态请求要apache去做,nginx只适合处理静态网页或反向代理。

二、编译安装Nginx服务

nginx是一款高性能、轻量级的服务软件,巨头稳定性高,系统资源消耗低,对http并发连接的处理能力高,对单台物理服务器可支持30000~50000个并发请求。(官方是这样,但是实际可能是二~三万,而apache差不多几千不到一万)

nginx官网下载下载nginx软件包
在这里插入图片描述
关闭防火墙
安装依赖包
在这里插入图片描述
解压在这里插入图片描述
创建nginx用户
在这里插入图片描述
添加配置项
在这里插入图片描述
编译及安装
在这里插入图片描述
查看nginx文件位置
在这里插入图片描述
在这里插入图片描述
将可执行文件建立软连接放入系统目录里,方便系统识别命令,就不需要使用绝对路径执行命令
在这里插入图片描述

三、Nginx命令

nginx启动,停止,重启,查看状态

直接输入nginx就会启动nginx服务,停止服务可以使用nginx进程,使用kill命令即可,nginx初始是没有systemctl文件的,所以只能使用nginx本身以及kill停止进程。
查看进程可以使用netstat -lntp | grep nginx查看是否在运行。或者使用ps aux | grep nginx也可以。
在这里插入图片描述
master是nginx的主进程,是启动服务时读取nginx的配置文件和管理工作进程。
worker是nginx的工作进程,是负责连接客户端工作的。
在这里插入图片描述
有一个文件专门用来保存nginx服务的进程号
在这里插入图片描述

kill的几种方式:
kill -15:默认的kill杀掉进程的方式,告诉进程你自己关闭。
kill -9:强制杀掉进程
kill -3:优雅的杀死进程,提醒进程自行关闭,并记录进程的“遗言”
killall:通过进程名杀掉进程
pkill:只要进程名包含所输入参数的进程都会被杀掉

总结:
启动命令:
kill
停止命令:
kill -3 PID号
kill -s QUIT PID号
killall -3 nginx
killall -s QUIT ID号
重载命令:
kill -1 PID号
kill -s HUP PID号
killall -1 nginx
killall -s HUP PID号

nginx升级:
先将源文件移走,以防下载失败可以恢复,然后再编译安装新的安装包
在这里插入图片描述
这个时候使用./nginx -v就可以看到新的版本,但是这只是做了文件替换,并没有升级,接下来回到软件包目录。
在打开nginx的状态下使用make upgrade开始在线升级。
在这里插入图片描述

四、向系统添加nginx服务

系统本身是无法使用systemctl打开或者关闭nginx服务的,如果想使用systemctl来操作,就需要我们自己写一个脚本。
在这里插入图片描述
在这里插入图片描述
使用systemctl管理的话需要创建一个nginx服务的配置文件
vim /usr/lib/systemd/system/nginx.service
在这里插入图片描述
配置完就可以使用systemctl命令
在这里插入图片描述
使用脚本和配置文件都可以管理服务。

五、nginx配置文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
临时修改程序同时打开文件数:
ulimit -n 参数
在这里插入图片描述
永久设置需要去配置文件里修改
vim /etc/security/limits.conf
在这里插入图片描述

需重启才能生效

六、http块的配置

vim /usr/local/nginx/conf/nginx.conf

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

重启nginx服务,再用浏览器访问即可看见设置的内容,这个属于根目录查看
在这里插入图片描述
虚拟目录查看
在这里插入图片描述
在这里插入图片描述
文件位置并没有动,访问不到是因为两次所代表的根目录不一样
在/usr/local/nginx/logs/access.log文件里查看
在这里插入图片描述
在/usr/local/nginx/logs/error.log文件里查看
在这里插入图片描述
两次不同的原因:
在这里插入图片描述

查看模块
在这里插入图片描述
在配置文件里配置模块
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

编写shell脚本来判断监控服务器的并发量
在这里插入图片描述


http://www.niftyadmin.cn/n/393899.html

相关文章

随机数发生器设计(三)

随机数发生器设计(三)- 熵估计和健康测试 熵估计健康测试 熵估计 考虑都熵源的多样性,建立一个通用的熵估计模型比较困难。本文采用nist.sp.800-90B推荐的Markov评估。详见 https://doi.org/10.6028/NIST.SP.800-90B。 执行Markov评估时&am…

图论试题2021

25 A:最大度是7,大于了顶点数6,故不是简单图的度序列。 C:树的度序列至少要有两个度为1的顶点 D:只要度数为奇数的个数有偶数个,就是度序列。 A:每棵树的中心由一个点或两个相邻点组成 B&…

对Java远程热部署实践学习和分析

目录 一、热部署现状和必要性分析 (一)热部署定义和现状分析 (二)技术实现难度分析 (三)其必要性分析 二、走进美团Java远程热部署实践 (一)Sonic分析 (二&#x…

springboot+vue+elementui计算机专业课程选课管理系统vue

本系统的主要任务就是负责对学生选课。主要用户为老师、学生,其中,学生可对自己的信息进行查询,可以进行选课,也可以进行删除已选课程,教师可对学生和课程的信息进行查询,教师拥有所有的权限,可以添加删除学生信息。系统提供界面,操作简单。 为实现这些功能,系统一个…

Linux 实操篇-进程管理(重点)

Linux 实操篇-进程管理(重点) 基本介绍 在LINUX 中,每个执行的程序都称为一个进程。每一个进程都分配一个ID 号(pid,进程号)。>windows > linux每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后…

微信小程序uniapp医患管理系统预约挂号就诊处方满意评价系统

从系统开发环境、系统目标、设计流程、功能设计等几个方面对系统进行了系统设计。开发出本医患关系管理系统,主要实现了管理员后端;首页、个人中心、用户管理、医生管理、医生信息管理、患者信息管理、预约就诊管理、就诊信息管理、投诉管理、投诉反馈管…

Redis的网络模型

Redis是单线程还是多线程? Redis3.0之前都是单线程 1)如果只是针对于Redis的核心业务部分(命令处理),答案是单线程 2)如果是说整个redis,那么就是多线程 在Redis的版本迭代过程中,在两个非常重要的时间节点上引入了对多线程的支持…

Spring-Cloud-Gateway 整合 Sa-Token 全局过滤器之路由匹配

Spring-Cloud-Gateway 整合 Sa-Token 全局过滤器之路由匹配 Sa-Token 是一个轻量级 Java 权限认证框架,主要解决:登录认证、权限认证、单点登录、OAuth2.0、分布式Session会话、微服务网关鉴权 等一系列权限相关问题。 Sa-Token 旨在以简单、优雅的方式完…