美文网首页我爱编程
第一讲 nginx简介和安装

第一讲 nginx简介和安装

作者: 农民工进城 | 来源:发表于2018-04-15 16:43 被阅读0次

    本章要点:

    • 简介
    • Nginx和
    • Nginx安装和一些简单操作

    1.1 简介

    Nginx是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。
    在高连接并发的情况下,Nginx是Apache服务器不错的替代品。
    那么什么是反向代理和正向代理呢?
    正向代理: 意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。
    反向代理(Reverse Proxy):方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

    1.2 Nginx相对于Apache优点

    常见的应用服务器: Apache/Microsoft IIS/Tomcat/Lighttpd/Nginx。
    Nginx相对于Apache优点:
    1)高并发响应性能非常好,官方Nginx处理静态文件并发5w/s
    2)反向代理性能非常强。(可用于负载均衡)
    3)内存和cpu占用率低。(为Apache的1/5-1/10)
    4)对后端服务有健康检查功能。
    5)支持PHP cgi方式和fastcgi方式。
    6)配置代码简洁且容易上手。

    1.3 Nginx安装和一些简单操作

    安装
    第一步:从http://nginx.org/download/上下载相应的版本(或者wget http://nginx.org/download/nginx-1.5.9.tar.gz直接在Linux上用命令下载)
    第二步:解压 tar -zxvf nginx-1.5.9.tar.gz
    第三步:设置一下配置信息 ./configure --prefix=/usr/local/nginx ,或者不执行此步,直接默认配置
    (可能缺少的包
    yum -y install gcc automake autoconf libtool make
    yum install gcc gcc-c++
    yum -y install pcre-devel
    yum install -y zlib-devel)
    第四步:
    make 编译 (make的过程是把各种语言写的源码文件,变成可执行文件和各种库文件)
    make install 安装 (make install是把这些编译出来的可执行文件和库文件复制到合适的地方)
    在配置信息的时候,也就是在第三步,出现了一下错误:

    截图.jpeg
    错误为:./configure: error: the HTTP rewrite module requires the PCRE library.
    那么需要安装pcre-devel解决问题
    yum -y install pcre-devel
    还有可能出现:

    错误提示:./configure: error: the HTTP cache module requires md5 functions

    from OpenSSL library. You can either disable the module by using

    --without-http-cache option, or install the OpenSSL library into the system,

    or build the OpenSSL library statically from the source with nginx by using

    --with-http_ssl_module --with-openssl=<path> options.

    解决办法:
    yum -y install openssl openssl-devel
    安装后在linux下启动和关闭nginx:

    启动操作
    /usr/nginx/sbin/nginx
    (/usr/nginx/sbin/nginx -t 查看配置信息是否正确)

    停止操作

    停止操作是通过向nginx进程发送信号(什么是信号请参阅linux文 章)来进行的

    步骤1:查询nginx主进程号
    ps -ef | grep nginx
    在进程列表里 面找master进程,它的编号就是主进程号了。

    步骤2:发送信号

    从容停止Nginx:
    kill -QUIT 主进程号
    快速停止Nginx:
    kill -TERM 主进程号
    强制停止Nginx:
    pkill -9 nginx
    另外, 若在nginx.conf配置了pid文件存放路径则该文件存放的就是Nginx主进程号,如果没指定则放在nginx的logs目录下。有了pid文 件,我们就不用先查询Nginx的主进程号,而直接向Nginx发送信号了,命令如下:
    kill -信号类型 '/usr/nginx/logs/nginx.pid'
    平滑重启

    如果更改了配置就要重启Nginx,要先关闭Nginx再打开?不是的,可以向Nginx 发送信号,平滑重启。

    平滑重启命令:
    kill -HUP 住进称号或进程号文件路径
    或者使用
    /usr/nginx/sbin/nginx -s reload
    注意,修改了配置文件后最好先检查一下修改过的配置文件是否正 确,以免重启后Nginx出现错误影响服务器稳定运行。判断Nginx配置是否正确命令如下:
    nginx -t -c /usr/nginx/conf/nginx.conf
    或者
    /usr/nginx/sbin/nginx -t
    环境使用yum安装,可能遇到一个问题:

    Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again

    处理很简单,修改文件“/etc/yum.repos.d/epel.repo”, 将baseurl的注释取消, mirrorlist注释掉就行。

    还有可能遇到以下这个错误:
    Cannot retrieve repository metadata (repomd.xml) for repository:xxxxxx.

    这个错误其实也很简单,错误信息已经提示你,就是xxxxxx.repo这个文件有问题。
    (1)打开/etc/yum.repos.d/xxxxxx.repo文件
    (2)enabled=1改成enabled=0

    相关文章

      网友评论

        本文标题:第一讲 nginx简介和安装

        本文链接:https://www.haomeiwen.com/subject/hjodkftx.html