nginx

1.Nginx的程序架构:
        master/worker
           
一个master进程:
               
负载加载和分析配置文件、管理worker进程、平滑升级
           
一个或多个worker进程
               
处理并响应用户请求
           
缓存相关的进程:
                cache loader
:载入缓存对象
                cache manager
:管理缓存对象
               
       
特性:异步、事件驱动和非阻塞
           
并发请求处理:通过epoll/select
           
文件IO:高级IO sendfile,异步,mmap
           
2. nginx
模块:高度模块化,但其模块早期不支持DSO机制;近期版本支持动态装载和卸载;
           
模块分类:
               
核心模块:core module
               
标准模块:
                    HTTP modules

                        Standard HTTP
modules
                        Optional HTTP
modules
                    Mail modules
                    Stream modules

                       
传输层代理
                3rd party modules
               
   nginx
的功用:
           
静态的web资源服务器;(图片服务器,或js/css/html/txt等静态资源服务器)
           
结合FastCGI/uwSGI/SCGI等协议反代动态资源请求;
            http/https
协议的反向代理;
            imap4/pop3
协议的反向代理;
            tcp/udp
协议的请求转发;
           
    nginx
的安装配置:
       
官方的预制包:
            http://nginx.org/packages/centos/7/x86_64/RPMS/
            Fedora-EPEL:

3.程序环境

            配置文件的组成部分:
               
主配置文件:nginx.conf
                    include
conf.d/*.conf
                fastcgi
uwsgiscgi等协议相关的配置文件
                mime.types
:支持的mime类型
           
主程序文件:/usr/sbin/nginx
            Unit File
nginx.service
       
       
配置:
           
主配置文件的配置指令:
                directive value [value2
…];
               
               
注意:
                    (1)
指令必须以分号结尾;
                    (2)
支持使用配置变量;
                       
内建变量:由Nginx模块引入,可直接引用;
                       
自定义变量:由用户使用set命令定义;
                            set
variable_name value;
                           
引用变量:$variable_name
                                   
                           
           
主配置文件结构:
                main block
:主配置段,也即全局配置段;
                    event {
                        …
                    }
:事件驱动相关的配置;
                http {
                    …
                }
http/https 协议相关的配置段;
                mail {
                    …
                }
                stream {
                    …
                }
           
            http
协议相关的配置结构
                http {
                    …
                    …
:各server的公共配置
                    server {
                        …
                    }
:每个server用于定义一个虚拟主机;
                    server {
                        …
                        listen
                        server_name
                        root
                        alias
                        location
[OPERATOR] URL {
                            …
                            if CONDITION
{
                                …
                            }
                        }
                    }

4.建一个nginx服务器

nginx

nginx

nginxnginx

nginx

nginx

5.性能优化,如果一台主机只服务nginx,绑定cpu,调优先级及最大调优

nginx

nginx

6.限制条件访问

nginx

在172.16.254.177上访问 403

nginx

7.图片限制访问

nginx

nginx

nginx

nginx

8.root与alias区别

nginx

nginx

nginx

nginx

nginx

nginx

nginx

nginx

9.错误页面重新定义

nginx

nginx

nginx

nginx

nginx

10.认证登录设置

nginx

nginx

nginx

nginx

11.状态页访问

nginx

nginx

12. 日志定义

nginx

nginx

13. gzip压缩模块

nginx

nginx

 

14。ssl 模块

(1)在另外台主机上

nginx

(2)在另外nginx那台主机上

nginx

nginx

(3)在CA主机上

nginx

nginx

(3)在nginx主机上

nginx

nginx

15.rewirte模块

nginx

nginx

nginx

nginx

原创文章,作者:yaobinbin,如若转载,请注明出处:http://www.178linux.com/78228

(0)
yaobinbinyaobinbin
上一篇 2017-06-19 16:06
下一篇 2017-06-19 16:57

相关推荐

  • N25-第一周作业

    第一周博客作业 1.描述计算机的组成及其功能 2.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别 3.描述Linux哲学思想,并按照自己的理解对其进行解释性描述。 4.说明Linux系统上命令的使用格式:详细介绍,ifconfg,echo,tty,startx,export pwd,history,shutdown,poweroff,rebo…

    Linux干货 2016-12-02
  • 每日一练 —8.4 文本处理工具,正则表达式

    练习 1 、找出ifconfig 命令结果中本机的所有IPv4 地址 2 、查出分区空间使用率的最大百分比值 3 、查出用户UID 最大值的用户名、UID 及shell 类型 4 、查出/tmp 的权限,以数字方式显示 5 、统计当前连接本机的每个远程主机IP 的连接数,并按从大到小排序   6,显示/proc/meminfo文件中以大写或小写s开…

    Linux干货 2016-08-15
  • linux全方位掌握一个命令–思路比方法更重要

    Linux命令众多,当不清楚一个命令的使用方法时,我们该怎样了解命令的属性和帮助? 1.  用type命令了解一个命令的属性 [root@zejin240 testdir]# type cdcd is a shell builtin[root@zejin240 testdir]# type rmrm is aliased to `rm -i&#03…

    Linux干货 2016-10-30
  • N22-love cat 博客作业 第3部分

    基于 heartbeat v2 crm 实现HA高可用性的 LAMP+wordpress 基本环境设置 OS   version:       CentOS release 6.7 (Final) Soft versio…

    Linux干货 2016-08-15
  • 第一篇

     新的征程又开始了,努力吧!

    Linux干货 2016-12-26
  • 网络管理3

    一、知识整理 1、跨网络通信:路由 路由的分类:主机路由;网络路由;默认路由。 将主机接入网络,需要配置网络相关设置。一般包括如下内容:主机名;IP/MASK;路由:默认网关;DNS服务器:主、次、第三DNS服务器。 2、网络配置文件:IP、MASK、GW、DNS相关配置文件 /etc/sysconfig/network-scripts/ifcfg-IFAC…

    Linux干货 2016-09-10