美文网首页
2019-04-30 Nginx服务初步

2019-04-30 Nginx服务初步

作者: Ffvc | 来源:发表于2019-05-11 20:52 被阅读0次

    Day44

    作者:方
    归档:课堂笔记
    时间:2019/4/30

    Nginx服务初步

    1. 什么是Nginx

    是一个开源的、支持高性能、高兵法的www服务和代理服务软件。
    Nginx是目前最流行的Web服务软件!
    现已被F5收购。

    2. Nginx的三大功能:

     1) 网页服务:自身是静态Web服务,还支持动态Web服务
     2) 负载均衡、反向代理
     3) 缓存服务器
    

    3. Nginx特点

    静态小文件高并发,占用资源少,软件本身小

    4. Nginx的应用场景

    1)  静态Web服务器,使用Nginx运行HTML、JS、CSS、小文件等静态数据,做静态服务器
    2)  配合运行动态Web服务器
    3)  做反向代理负载均衡,目前是常见的http的负载均衡
    4)  做Web缓存服务器(把文件放入内存里)
    

    5. 反向代理与负载均衡

    什么是代理:海外代购、微商;代替别人做事

    正向代理:代替,效率低。局域网电脑上网由代理服务器代替你的电脑去访问服务器。

    反向代理:代替,效率低。互联网上的用户需要打开服务器上的网站时,需要请求代理服务器去访问内部的服务器,代替用户去访问内部服务器上的资源。(大并发的情况下是不行的)

    负载均衡:是转发而不是代理,效率高。用户请求网站,负载均衡把请求发给服务器,处理完后服务器直接把结果返回给用户,不经过负载均衡。

    6. 为什么Nginx总体性能比Apache高?

    Nginx使用最新的epoll和queue一部网络I/O模型,而Apache则使用的是传统的select模型。

    select和epoll的区别:打比方
    select模型:比如:伙伴去宿舍找你,一个屋一个屋的找,效率低。

    epoll模型:比如:伙伴去宿舍找你,先问宿管,看看在哪个屋,然后直奔那个屋,效率高。

    select模型:比如:小孩撒尿,挨个问要不要撒,如果要,就拉出来带着去。

    epoll模型:比如:小孩撒尿,统一告知如果要尿尿,你就站出来

    7. 软件安装方式

    1)  rpm安装,简单、快、依赖多,解决依赖困哪繁琐
    2)  yum安装,简单、快,自动解决依赖,但不能选择软件版本和存放路径
    3)  编译安装(源码编译),慢、复杂、需要GCC编译器,但可以自定义安装(版本和存放路径)
    4)  将源码制作成rpm,然后放到yum仓库,实现yum自动安装。一次性慢,复杂,安装快,可以自定义安装
    5)二进制安装!
    

    8. Nginx安装

    8.1yum安装

    1)配置官方源
    
    image.png
    2)下载 
    
    image.png
    3)开启,自启,检查   systemctl三连击
    
    image.png
    显示成功
    image.png

    8.2编译安装:(和8.1二选一)

    安装Nginx所需的pore:URL重写软件,即实现伪静态需要这个软件

    1)  采用yum方式安装pcre:(带delve字符串的软件包是必须安装的)(依赖包)     
    

    yum install pcre pcre-devel -y

    image.png

    安装后检查安装结果:

    image.png
    2)  安装openssl-devel(带delve字符串的软件包是必须安装的)加密用的,必须安装,不然会报错。(依赖包)
    

    yum install openssl-devel openssl -y

    安装后检查安装结果
    rpm -qa openssl-devel openssl

    image.png
    3)  开始安装Nginx
    

    创建/server/tools目录固定存放安装的软件

    mkdir -p /server/tools

    进入这个目录

    cd /server/tools/

    下载软件包,进入官网下载这个[http://nginx.org/download/nginx-1.16.0.tar.gz*]
    wget http://nginx.org/download/nginx-1.16.0.tar.gz

    image.png

    创建nginx用户,不创建家目录并不让登录
    useradd nginx -s /sbin/nologin -M

    解压
    tar xf nginx-1.16.0.tar.gz

    cd nginx-1.16.0

    ./configure --user=www --group=www --prefix=/application/nginx-1.16.0/ --with-http_stub_status_module --with-http_ssl_module --with-pcre

    image.png

    configure参数的作用

    --prefix=PATH 路径
    --user=USER 用户
    --group=GROUP 组
    --with-pcre 伪静态
    --with-http_stub_status_module 状态
    --with-http_ssl_module 加密 443

    编译
    make *

    把软件拷贝到指定的位置
    make install

    创建软链接
    ln -s /application/nginx-1.16.0/ /application/nginx

    4)  启动nginx。到此完成
    

    /application/nginx/sbin/nginx

    检查端口:netstat -lntup|grep nginx

    image.png
       5)   注意:
    

    ①每一步结尾直接echo $?验证是否正确。返回0代表步骤正确

    ②验证最终的安装是否正确。
    wget 10.0.0.8 curl 10.0.0.8

    编译安装配置:

    [root@web02 /application/nginx]# tree
    .
    ├── conf
    │ ├── fastcgi.conf #和动态服务的接口配置参数,配合php
    │ ├── fastcgi.conf.default
    │ ├── fastcgi_params
    │ ├── fastcgi_params.default
    │ ├── koi-utf
    │ ├── koi-win
    │ ├── mime.types #媒体类型
    │ ├── mime.types.default
    │ ├── nginx.conf #主配置文件
    │ ├── nginx.conf.default
    │ ├── scgi_params
    │ ├── scgi_params.default #和动态服务的接口配置参数
    │ ├── uwsgi_params
    │ ├── uwsgi_params.default #和动态服务的接口配置参数,配合Python
    │ └── win-utf
    ├── fastcgi_temp
    ├── html #默认站点目录。
    │ ├── 50x.html
    │ └── index.html #默认的首页,10.0.0.8不指定文件,默认加载index.html首页。
    ├── logs
    │ ├── access.log #访问日志
    │ ├── error.log #Nginx错误日志。
    │ └── nginx.pid #进程号对应文件。
    ├── sbin
    │ └── nginx #启动命令。

    [root@web02/application/nginx/html]# vim index.html

    <!DOCTYPE html>
    <html>
    <head>
    <title>Welcome to nginx!</title>
    <style>
    body {
    width: 35em;
    margin: 0 auto;
    font-family: Tahoma, Verdana, Arial, sans-serif;
    }
    </style>
    </head>
    <body>
    <h1>Welcome to nginx!</h1>
    <p>If you see this page, the nginx web server is successfully installed and
    working. Further configuration is required.</p>

    <p>For online documentation and support please refer to
    <a href="http://nginx.org/">nginx.org</a>.

    Commercial support is available at
    <a href="http://nginx.com/">nginx.com</a>.</p>

    <p><em>Thank you for using nginx.</em></p>
    </body>
    </html>
    ~

    相关文章

      网友评论

          本文标题:2019-04-30 Nginx服务初步

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