Nginx学习与安装

一、Nginx介绍

是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器。Nginx以事件驱动的方式编写,所以有非常好的性能,同时也是一个非常高效的反向代理、负载平衡。

Nginx可以做什么

  1. 反向代理
    暴露的是代理服务器地址,隐藏了真实服务器 IP 地址。
  2. 负载均衡
    将请求分发到各个服务器上,即将负载分发到不同的服务器。
  3. 动静分离
    静态资源与动态资源分离。

二、Nginx 安装

2.1 安装 pcre-8.44.tar.gz

  1. 下载链接
    https://udomain.dl.sourceforge.net/project/pcre/pcre/8.44/pcre-8.44.tar.gz
    上传到 /usr/src
    在这里插入图片描述
  2. 解压 tar -zxvf pcre-8.44.tar.gz
  3. 进入 pcre-8.44目录,执行./configure
    在这里插入图片描述4. 执行命令make && make install
    在这里插入图片描述5. 查看安装成功
    在这里插入图片描述

2.2 安装openssl与zlib

yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

2.3 安装nginx

  1. 解压
    在这里插入图片描述

  2. 进入目录, 执行 ./configure
    在这里插入图片描述

  3. make && make install
    在这里插入图片描述

  4. 查看启动命令并启动
    路径 /usr/local/nginx/sbin
    在这里插入图片描述
    启动脚本
    在这里插入图片描述

  5. 查看配置文件
    /usr/local/nginx/conf/nginx.conf
    在这里插入图片描述
    在这里插入图片描述
    端口为80
    打开浏览器输入 http://192.168.137.6/(此处为自己的ip地址)
    在这里插入图片描述显示上图则允许成功。

2.4 Nginx 命令

目录下 /usr/local/nginx/sbin

  1. 启动命令
    ./nginx
  2. 关闭命令
    ./nginx -s stop
  3. 查看nginx 版本号
    ./nginx -v
  4. 重新加载nginx
    ./nginx -s reload

cp ./nginx /usr/local/bin/nginx
将 nginx 脚本拷贝到 /usr/local/bin 目录下,这样就不用在进入/usr/local/nginx/sbin目录下调用脚本。

Nginx 配置文件

  1. 目录 /usr/local/nginx/conf
    在这里插入图片描述

  2. nginx配置文件 nginx.conf 组成

    nginx配置文件包含3部分内容

    • 全局块:配置服务器整体运行的配置指令。
      从配置文件开始到 events 块之间的内容,主要会设置一些影响 nginx 服务器整体运行的配置指令,主要包括配
      置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等。

      比如 worker_processes 1;处理并发数的配置

    • events 块:影响 Nginx 服务器与用户的网络连接

      events {
      	worker_connections  1024;
      }
      

      events 块涉及的指令主要影响 Nginx 服务器与用户的网络连接,常用的设置包括是否开启对多 work process 下的网络连接进行序列化,是否允许同时接收多个网络连接,选取哪种事件驱动模型来处理连接请求,每个 word
      process 可以同时支持的最大连接数等。

      比如 worker_connections 1024; 支持的最大连接数为 1024

    • http 块
      还包含两部分:

      • http 全局块
        http 全局块配置的指令包括文件引入、MIME-TYPE 定义、日志自定义、连接超时时间、单链接请求数上限等。

      • server 块
        每个 http 块可以包括多个 server 块,而每个 server 块就相当于一个虚拟主机。
        而每个 server 块也分为全局 server 块,以及可以同时包含多个 locaton 块。

        一个 server 块可以配置多个 location 块。
        这块的主要作用是基于 Nginx 服务器接收到的请求字符串(例如 server_name/uri-string),对虚拟主机名称(也可以是 IP 别名)之外的字符串(例如 前面的 /uri-string)进行匹配,对特定的请求进行处理。地址定向、数据缓存和应答控制等功能,还有许多第三方模块的配置也在这里进行。

猜你喜欢

转载自blog.csdn.net/Zhangxg0206/article/details/115334744