Nginx基础一( 环境配置和安装 )

一、Nginx优点

  • IO 多路复用epoll
    多个描述符的I/O操作都在一个线程内并发交替的顺序完成,这就叫I/O多路复用,这里的“复用”指的是复用同一个线程。

  • 轻量级
    功能模块少,代码模块化

  • CPU 亲和(affinity)
    CPU 亲和:是一种把CPU核心和Nginx工作进程绑定的方式,把每个worker进程固定在一个cpu上执行,渐少切换cpu的cache miss,获得更好的性能


    Nginx基础一( 环境配置和安装 )_第1张图片
    cpu亲和.png
  • sendfile
    当请求要给文件的时候,要经过操作系统的内核空间(Kernel space)和用户空间(User space),到达socket,再response给用户。而实际上静态文件通常不需要经过用户空间的处理,可以直接通过操作系统的内核空间进行传输,这就是sendfile。


    Nginx基础一( 环境配置和安装 )_第2张图片
    sendfile.png

二、环境要求

(1) 系统硬件 CPU>=2Core, 内存>= 256M

(2) 操作系统 CentOS >=7.0), 位数 x64,

(3) 环境调试确认(以下四点):

a. 确认系统网络
`ping www.baidu.com`看是否能ping通,能ping通则ok。
若ping不通,报出`name or service not known`,尝试以下解决方法:
  • 首先添加dns服务器:vi /etc/resolv.conf , 在文件中添加如下两行:
nameserver 8.8.8.8
nameserver 8.8.4.4

保存退出,重启服务器。之后再ping 一次试试,如果没有解决 继续:

  • vi /etc/sysconfig/network-scprits/ifcfg-ens33 (这个文件名称 可能会不同,有的是ens 加上其他数字)
    在文件中 找到 ONBOOT=NO 改成 ONBOOT=yes,保存退出

  • 重启网络: service network restart,再ping一次试试

b. 确认yum可用,

yum list|grep gcc

c.确认关闭iptables规则

iptables -L 查看是否有iptables规则
iptables -F 关闭iptables规则
保险起见:iptables -t nat -L 查看nat表里是否有规则
iptables -t nat -F 关闭

d. 确认停用SELinux

getenforce 查看SELinux 是否开启。可能返回结果有三种:Enforcing、Permissive 和 Disabled。Disabled 代表 SELinux 被禁用,Permissive 代表仅记录安全警告但不阻止可疑行为,Enforcing 代表记录警告且阻止可疑行为。
这里执行 setenforce 0 将SELinux 状态置为Permissive ,临时关闭(不用重启机器)

(4)依赖安装

安装基础依赖

yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake
yum -y install wget httpd-tools vim

这里-y参数表示不需要确认,一键式安装

三、Nginx快速安装

登陆Nginx官网,其中:

  • Mainline version 开发版本
  • Stable version稳定版本
  • Legacy versions 历史版本

(1)找到stable version,找到下图红框中的内容(yum源的配置信息)并复制

安装配置.png

(2)执行vim etc/yum.repos.d/nginx.repo在机器的yum源里新建一个nginx.repo文件,并把刚刚复制的内容粘贴进去,将OS替换为centos, OSRELEASE 替换为7
即以下内容:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

(3) 执行yum list |grep nginx, 把nginx相关的版本列出来, 如下图所示,nginx当前最新版本1.14.0

Nginx基础一( 环境配置和安装 )_第3张图片
nginx1.14.0.png

(4)执行 yum install nginx 安装nginx
(5) nginx -v 查看当前nginx 安装的版本, nginx -V 查看编译的参数

四、Nginx的安装目录

执行 rpm -ql nginx 查看所有的nginx配置目录(由于这里nginx使用yum方式安装,安装的是一个一个的rpm包,而rpm是包管理器,rpm -ql xxx, 则可列出安装的服务的所有配置文件目录)。

Nginx基础一( 环境配置和安装 )_第4张图片
Nginx目录简介.png

五、Nginx编译参数

nginx -V 查看编译参数
nginx -V 2>&1 | sed "s/\s\+--/\n --/g" 查看格式化后的编译参数

Nginx基础一( 环境配置和安装 )_第5张图片
编译选项.png

你可能感兴趣的:(Nginx基础一( 环境配置和安装 ))