一、Nginx概述1.1Nginx的特点(1)一款高性能、轻量级web服务
- 稳定性高
- 系统资源消耗低高
- 对HTTP并发连接的处理能力
1.2 Nginx编译安装
- 安装支持软件
- 创建运行用户、组
- 编译安装Nginx
- 检查配置文件
- 启动、重载配置、停止Nginx
- 轻量级,同样起web服务,比apache占用更少的内存及资源
- 抗并发,nginx处理请求是异步非阻塞的,而apache是阻塞型的,在高并发下,nginx能保持低资源低消耗高性能
- 高度模块化的设计,编写模块相对简单
- Rewrite比nginx的rewrite强大 (rewrite的主要功能就是实现统一资源定位符URL的跳转)
- 模块多,基本想到的都可以找到
- 少bug,nginx的bug相对较多
- 超稳定
二、编译安装Nginx服务的操作步骤2.1关闭防火墙,将安装nginx所需软件包传到/opt目录下systemctl stop firewalldsystemctl disable firewalldsetenforce 0# 将压缩包传入到/opt目录下nginx-1.12.2.tar.gz2.2安装依赖包【Nginx的概述和配置】nginx的配置及运行需要pcre、zlib等软件包的支持,因此需要安装这些安装的开发包,以便提供相应的库和头文件
yum install -y pcre-devel zlib-devel gcc gcc-c++ make2.3创建运行用户、组(Nginx 服务程序默认以 nobody 身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限)useradd -M -s /sbin/nologin nginx2.4编译安装nginxcd /opttar zxvf nginx-1.12.2.tar.gz./configure \> --prefix=/usr/local/nginx \#指定nginx的安装路径> --user=nginx \#指定用户名> --group=nginx \#指定组名> --with-http_stub_status_module#启用 http_stub_status_module模块以变持状态线计 make && make installln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/##让系统识别nginx的操作命令2.5检查、启动、重启、停止 nginx服务nginx -t#检查配置文件是否配置正确#启动:nginx#停止cat /usr/local/nginx/logs/nginx.pid#先查看nginx的PID号kill -3 <PID号>#直接杀死kill -s QUIT <PID号>#优雅的杀死()killall -3 nginxkillall -s QUIT nginx#重载kill -1 <PID号>kill -s HUP <PID号>killall -1 nginxkillall -s HUP nginx#日志分割,重新打开日志文件kill -USR1 <PID号>#平滑升级kill -USR2 <PID号>新版本升级∶tar -zxvf nginx-1.xx.xX. tar.gzcd nginx-1.xx. xx./configure \--prefix=/usr/local/nginx \--user=nginx \--group=nginx \--with-http_stub_status_module \--with-http_ssl_modulemakemv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_oldcp objs/nginx /usr/local/nginx/sbin/nginxmake upgrade 或者先 killall nginx,再/usr/local/nginx/sbin/nginx2.6添加nginx系统服务方法一:vim /etc/init.d/nginx#创建脚本文件内容如下:#!/bin/bash#chkconfig: - 99 20#description:Nginx Server Control ScriptCOM="/usr/local/nginx/sbin/nginx"PID="/usr/local/nginx/logs/nginx.pid"case "$1" instart)$COM;;stop)kill -s QUIT $(cat $PID);;restart)$0 stop$0 start;;reload)kill -s HUP $(cat $PID);;*)echo "Usage:$0 {start|stop|restart|reload}"exit 1esacexit 0chmod +x /etc/init.d/nginxchkconfig --add nginxsystemctl daemon-reload#磁盘上的ngin服务更改,运行'systemctl daemon-reload'重新加载单元 。systemctl start nginxsystemctl stop nginx方法二:vim /lib/systemd/system/nginx.service[Unit]Description=nginxAfter=network.target[Service]Type=forkingPIDFile=/usr/local/nginx/logs/nginx.pidExecStart=/usr/local/nginx/sbin/nginxExecrReload=/bin/kill -s HUP SMAINPIDExecrStop=/bin/kill-s QUIT $MAINPIDPrivateTmp=true[Install]WantedBy=multi-user.target
经验总结扩展阅读
- 2023年旧爱变真爱的生肖 兜兜转转在一起的生肖
- 大海水命女人的命运 婚姻爱情如何
- 司空震开大钻被窝是什么梗
- 马桶里的尿垢很厚怎么去除
- 飞机上能带吃的吗
- 记一次HTTPClient模拟登录获取Cookie的开发历程
- 一瓶啤酒多少大卡
- 夏至菇的功效与作用 夏至菇孕妇能吃吗
- 夏至吃什么传统美食
- 夏至种什么农作物 夏至对农作物的影响有哪些