一、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的配置及运行需要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.targetchmod 754 /lib/systemd/ system/nginx.servicesystemctl start nginx.servicesystemctl enable nginx.service[Unit]:服务的说明Description:描述服务After:依赖,当依赖的服务启动之后再启动自定义的服务
[Service]服务运行参数的设置Type=forking是后台运行的形式 , 使用此启动类型应同时指定PIDFile以便systemd能够跟踪服务的主进程 。ExecStart为服务的具体运行命令ExecReload为重启命令ExecStop为停止命令PrivateTmp=True表示给服务分配独立的临时空间注意:启动、重启、停止命令全部要求使用绝对路径
[Install]服务安装的相关设置 , 可设置为多用户
三、实例操作:编译安装Nginx服务3.1关闭防火墙,将安装nginx所需软件包传到/opt目录下
文章插图
3.2安装依赖包
推荐阅读
- 记一次HTTPClient模拟登录获取Cookie的开发历程
- 无期迷途狄斯币怎么获取
- 无期迷途首充角色选谁
- 猫之城浪花约会怎么配队
- 幻塔大眼萌仔怎么获取
- 三星s21怎么截图_三星s21的截图方法
- 临时党支部成立 成立临时党支部的请示
- 《正义联盟》中超人是怎么死的
- 正义联盟中超人什么时候死的(正义联盟死去的英雄)
- 超人是怎么死的(超人家乡为什么被毁灭)