Nginx的安装(Windows和Linux)

一:Nginx安装(Windows)

     官网地址:https://nginx.org/en/download.html

解压完成后,文件目录如下:

   

在nginx的配置中开启 IOS 如何打开nginx_nginx

 

启动Nginx:

  直接双击目录下的nginx.exe,即可启动nginx服务器

  或者cmd命令,进入D:\Nginx\nginx-1.18.0目录下   nginx.exe运行

    

在nginx的配置中开启 IOS 如何打开nginx_服务器_02

 

访问Nginx:

  打开浏览器,输入 http://localhost 访问页面,出现如下图表示访问成功

    

在nginx的配置中开启 IOS 如何打开nginx_Nginx_03

 

 

停止Nginx:

  # 强制停止nginx服务器,如果有未处理的数据,丢弃

  D:\Nginx\nginx-1.18.0>nginx -s stop

  #优雅的停止Nginx服务器,如有未处理的数据,等待处理完成停止

  D:\Nginx\nginx-1.18.0>nginx -s quit

    

在nginx的配置中开启 IOS 如何打开nginx_在nginx的配置中开启 IOS_04

 二:Nginx安装(Linux)

    

在nginx的配置中开启 IOS 如何打开nginx_nginx_05

    在安装Nginx前,先检查是否安装Nginx相关的依赖 gcc、pcre、openssl、zlib

 

    使用如下命令:

      1:rpm包安装的,可以用 rpm -qa 看到,如果要查找某软件包是否安装,用 rpm -qa | grep "软件或者包的名字"

      2:以deb包安装的,可以用 dpkg -l 看到。如果是查找指定软件包,用 dpkg -l | grep "软件或者包的名字"

      3:yum方法安装的,可以用 yum list installed 查找,如果是查找指定包,用 yum list installed | grep "软件名或者包名"

    举例:查看是否安装了gcc

     yum list installed | grep 'gcc'

       

在nginx的配置中开启 IOS 如何打开nginx_在nginx的配置中开启 IOS_06

这里确认没有安装

   下载安装Nginx需要的依赖,下载后

      1:下载安装gcc

yum install -y gcc-c++

      2:下载安装pcre(Perl Compatible Regular Expressions)依赖:

pcre是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,

               所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库

yum install -y pcre pcre-devel

wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz

完成后解压tar -xvf 目录名,解压后执行./configure检查   再执行make && make install进行编译

      3:下载安装zlib依赖:

 zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库

yum install -y zlib zlib-devel

4:下载安装openssl依赖:

OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,

          并提供丰富的应用程序供测试或其它目的使用。nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),

          所以需要在 Centos 安装 OpenSSL 库

yum install -y openssl openssl-devel

      2:安装其他的依赖

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

3:一次性安装以上所有依赖

        yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

      

在nginx的配置中开启 IOS 如何打开nginx_Nginx_07

使用xshell上传Nginx  nginx-1.18.0.tar.gz安装包,解压命令:tar -xvf nginx-1.18.0.tar.gz

      进入解压后的文件目录 执行./configure检查,再执行make && make install进行编译

      完成后,在usr目录下会多出一个文件夹 local/nginx,在nginx中有sbin

      启动nginx:cd /usr/local/nginx/sbin   执行./nginx后启动

      可以查下nginx的进程:ps -ef | grep nginx

    

在nginx的配置中开启 IOS 如何打开nginx_nginx_08

 

完成后访问nginx,可能出现不能访问,可以关闭防火墙或者设置开放端口号

    iptables

查看防火墙状态 :systemctl status firewalld

      开启防火墙:systemctl start firewalld

      关闭防火墙:systemctl stop firewalld

      重启防火墙:systemctl restart firewalld

    firewalld

      在未关闭防火墙的情况下  在xshell中查看开放端口号:firewall-cmd --list-all

        

在nginx的配置中开启 IOS 如何打开nginx_Nginx_09

设置开放端口号:sudo firewall-cmd --add-port=80/tcp --permanent

        重启防火墙:firewall-cmd --reload

 

 三:Nginx配置介绍

Nginx服务器的配置信息主要集中在nginx.conf文件中,由以下三部分组成

  第一部分:全局块

    从配置文件开始到events块之间的内容,主要设置一些影响Nginx服务器整体运行的配置指令

如:worker_processes  1;  这是Nginx服务器处理并发服务的关键配置,值越大,支持的并发处理量也越多

      但是会受到硬件、软件等设备的制约

    

在nginx的配置中开启 IOS 如何打开nginx_在nginx的配置中开启 IOS_10

   

  第二部分:events块

    events块主要影响Nginx服务器与用户的网络连接,是否允许同时接收多个网络连接

如下图:worker_connections  1024;   支持最大连接数

    

在nginx的配置中开启 IOS 如何打开nginx_服务器_11

 

   第三部分:http块

    http块是Nginx服务器配置最频繁的部分,代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里

需注意:http块中包括http全局块、server块

    1:http全局块

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

    

在nginx的配置中开启 IOS 如何打开nginx_服务器_12

 

     2:server块

      server块和虚拟主机有密切关系,每个http块可以有多个server块,而每一个server块就相当于一个虚拟主机

        而每个server块也可以分为全局server块,以及同时有多个location块

      2.1 :server全局块

最常见的配置是本虚拟主机的监听配置和本虚拟主机的名称或IP配置

      2.2: location块

location块主要作用是基于Nginx服务器接收到的请求字符串(例如:server_name/uri-string),对虚拟主机名称

           (也可以是IP别名)之外的字符串(例如前面的uri-string)进行匹配,对特定的请求进行处理。

           地址定向、数据缓存和应答控制等功能,还有许多第三方模块的配置也在这里

      

在nginx的配置中开启 IOS 如何打开nginx_服务器_13

location指令说明:该指令用于匹配URL,如下

      Nginx - location指令详解

   

在nginx的配置中开启 IOS 如何打开nginx_Nginx_14