nginx的介绍、安装、启动

版权声明:guojawee https://blog.csdn.net/weixin_36750623/article/details/85003334

nginx是什么?

  服务器:http服务器、反向代理服务器、虚拟主机。
  http服务器
    是什么?是web服务器的一种,它是基于超文本传输协议HTTP的服务器。
    能干嘛?HTTP服务器会等待浏览器发送的请求,接收到URL请求后从中提取有用信息作出处理,最后将 处理结果返回给客户端。
  反向代理服务器
    是什么?代理服务器
    能干嘛?nginx接受pc机通过浏览器发来的请求,然后将请求转发给内网上的web服务器(下图中右侧的服 务器),并将从服务器上得到的结果返回给internet上请求的客户端。
    原理图:pc机为n台
在这里插入图片描述
  虚拟主机
    是什么?把一台真实的物理服务器主机分割成多个逻辑存储单元。每个逻辑单元都没有物理实体,但是每 一个逻辑单元都能像真实的物理主机一样在网络上工作,具有单独的IP地址(或共享的IP地址)、独立的域名以及完整的Internet服务器(支持WWW、FTP、E-mail等)功能。
    能干嘛?一台服务器上能够毫无冲突地配置多个网络IP地址,不必再为建立一个站点而购置单独的服务 器,降低费用提高效率。

为什么选择nginx作为中间件?优势

1.IO多路复用epoll
2.轻量级
  功能模块少
  代码模块化
3.CPU亲和:是一种把CPU核心和nginx工作进程绑定在一起的方式,把每个worker进程固定在一个CPU核心上执行,
图中,机器有2个CPU,每个CPU有4个核心,将worker与CPU核心直接绑定。 ==> 可以减少进程切换CPU带来的开销,获得更好的性能。
在这里插入图片描述
4. sendfile令拷贝
不经过内核与用户空间的切换,直接在内核空间之间拷贝

学习环境准备(硬件准备)

系统硬件:CPU>=2Core,内存>=256M
操作系统:版本>=7.0,位数x64

环境调试4项确认
(1)确认系统网络
    ping www.baidu.com
(2)确认yum可用
(3)确认iptables规则
    iptables -L 查看规则
    iptables -F 关闭规则
    iptables -t nat -F
(4)确认停用selinux
    gettenforce
    setenforce 0

安装nginx

sudo yum -y install gcc gcc-c++ make cmake
yum -y install wget httpd-tools vim

sudo yum install pcre pcre-devel
sudo yum install zlib-devel
./configure --prefix=/usr/local/nginx # 配置
make && make install # 编译 && 安装

安装之后,cd /usr/local/nginx
   conf 配置文件
   html 网页文件
   logs 日志文件
   sbin 二进制文件

启动nginx

cd /usr/local/nginx
./sbin/nginx # 启动
启动成功后的图见下:
在这里插入图片描述
  如果启动报错,见下图,表示不能绑定80端口,80端口已经被占用:natstat -nap | grep 80
在这里插入图片描述
解决方案:把占用80端口的软件或服务进程杀死 kill -9 pid

通过信号控制nginx关闭重启重新加载配置文件升级

kill   -信号   nginx的pid
kill   -信号  `cat logs/nginx.pid`
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_36750623/article/details/85003334