zoukankan      html  css  js  c++  java
  • 【Nginx】安装及配置(二)

    一:Nginx安装(Windows)

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

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

       

    启动Nginx:

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

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

        

    访问Nginx:

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

        

    停止Nginx:

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

      D:Nginx ginx-1.18.0>nginx -s stop

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

      D:Nginx ginx-1.18.0>nginx -s quit

        

     二:Nginx安装(Linux)

        

        在安装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需要的依赖,下载后

          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也需要此库

                    2.1:yum install -y pcre pcre-devel

            2.2: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

          

          使用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,可能出现不能访问,可以关闭防火墙或者设置开放端口号

        iptables

            查看防火墙状态 :systemctl status firewalld

          开启防火墙:systemctl start firewalld

          关闭防火墙:systemctl stop firewalld

          重启防火墙:systemctl restart firewalld

        firewalld

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

            

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

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

     

     三:Nginx配置介绍

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

      第一部分:全局块

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

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

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

        

       

      第二部分:events块

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

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

        

       第三部分:http块

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

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

        1:http全局块

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

        

         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)进行匹配,对特定的请求进行处理。

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

          

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

          Nginx - location指令详解

       

     

          

  • 相关阅读:
    如何利用tinyxml操纵xml及注意问题
    C++使用tinyxml解析Xml内存泄漏问题
    介绍一下 linux命令 nohup 和 & 使得程序在后台运行
    RTP有效负载(载荷)类型 (RTP Payload Type)
    makefile 语法 /usr/bin/ld: cannot find -lxxxx
    C# + Matlab 实现计件工时基于三层BP神经网络的拟合--真实项目
    C#+Arduino Uno 实现声控系统完全实施手册
    DHT11温度传感器
    PbootCMS二次开发的查询
    腾讯云存储PHP上传实例【代码示例】
  • 原文地址:https://www.cnblogs.com/yan-sh/p/13057603.html
Copyright © 2011-2022 走看看