nginx 浅析和几个基本操作

nginx的内容复杂起来还是很绕的,删繁就简,最简单的几个功能也是基本上能覆盖80%的需求的功能。主要看这部分。

ngxin的主要功能

  • 反向代理:根据不同需求做反向代理,例如图片请求,反向代理到图片服务器等。
  • 负载均衡:根据不同的策略,对不同服务器进行负载。

配置简介( 摘自这里 )

...              #全局块

events {         #events块
   ...
}

http      #http块
{
    ...   #http全局块
    server        #server块
    {
        ...       #server全局块
        location [PATTERN]   #location块
        {
            ...
        }
        location [PATTERN]
        {
            ...
        }
    }
    server
    {
      ...
    }
    ...     #http全局块
}
  • 1、全局块:配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。
  • 2、events块:配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
  • 3、http块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。
  • 4、server块:配置虚拟主机的相关参数,一个http中可以有多个server。
  • 5、location块:配置请求的路由,以及各种页面的处理情况。

删繁就简的功能,我们只实现这几个:

  • 1:启动服务并配置根目录
  • 2: 配置一个反向代理
  • 3:配置一个页面重定向
  • 4:配置404页面

启动服务并配置根目录

简单点,说话的方式简单点。能删的都删了

worker_processes  1;
error_log  logs/error.log;

events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /Users/mzy/Desktop/nginx_center;
            index  index.html index.htm;
        }
    }
}

配置服务,只需要注意两个地方

  • listen: 端口号。
  • location: 文件对应的位置

    root:根目录位置,就是网站入口目录

    index:访问首页

结束。

配置一个反向代理

添加一个反向代理,只需要加proxy_pass

worker_processes  1;
error_log  logs/error.log;

events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /Users/mzy/Desktop/nginx_center;
            index  index.html index.htm;
        }

        location /mzy {
            proxy_pass   http://mazhaoyang.cn;
        }
    }
}

重定向

重定向只需要添加一个rewrite

worker_processes  1;
error_log  logs/error.log;

events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /Users/mzy/Desktop/nginx_center;
            index  index.html index.htm;
        }

        location /mzy {
            proxy_pass   http://mazhaoyang.cn;
        }

        location /demo {
            rewrite .*   http://mazhaoyang.cn/demos/liantong;
        }
    }
}

设置错误页面

设置错误页面只需要配置一下error_page

worker_processes  1;
error_log  logs/error.log;

events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /Users/mzy/Desktop/nginx_center;
            index  index.html index.htm;
        }

        location /mzy {
            proxy_pass   http://mazhaoyang.cn;
        }

        location /demo {
            rewrite .*   http://mazhaoyang.cn/demos/liantong;
        }

        error_page 404 /404.html;
        location = /404.html {
            root /Users/wedive/Desktop/nginx_center/err;
        }
    }
}

随机浏览