马哥 linux 2015 nginx,Nginx安装及配置文件结构解析-马哥视频学习笔记

nginx1.8.1安装配置:

./configure

--prefix=/usr/local/nginx \

--conf-path=/etc/nginx/nginx.conf \

--user=nginx --group=nginx \

--error-log-path=/var/log/nginx/error.log \

--http-log-path=/var/log/nginx/access.log \

--pid-path=/var/run/nginx/nginx.pid \

--lock-path=/var/lock/nginx.lock \

--with-http_ssl_module \

--with-http_stub_status_module \

--with-http_gzip_static_module \

--with-debug

make && make install

配置文件的组成部分:

- 主配置文件:nginx.conf

- include conf.d/*.conf

- /etc/nginx/conf.d/*.conf

- fastcgi配置文件:fastcgi_params,uwsgi_params

配置指令:

- args variable1 [variable2...]

- 支持变量

- 内置变量 :由编译模块引入

- 自定义变量 set variable value1

- 变量引用 $variable

配置文件组织结构

main block

event{

...

}

http{

...

server{

...

server_name

root

alias

location /url/{

}

...

}

server{

...

}

}

server:

1.listen监听

基于port:监听在不同的端口

基于hostname:server_name指向不同的主机名

2.listen

listen address [:port] [default_server] [ssl] [http2] [spdy]

listen port [default_server] [ssl] [http2] [spdy]

default_server:设置默认虚拟主机,用于基于IP地址,或使用了任意不能对应于任何一个server的name所返回站点;

ssl:用于限制只能通过ssl连接提供服务;

spdy:在编译了spdy模块的情况下

http2:http version 2;

3.server_name name [...]:

后可跟一个或多个主机名;名称还可以使用通配符和正则表达式~

首先做精确匹配

左侧通配符

右侧通配符

正则表达式

9.alias

只能用于location配置段,定义路径别名

location /images/ {

root /data/imags/;

}

location /iamges/ {

alias /data/imgs/;

}

注意:

root指令:给定的路径应该对应于location左边的'/'

/images/test.jpg - > /datat/imgs/images/test.jpg

alias指令:

/images/test.jpg - > /data/imgs/test.jpg

10.index

index file ...;

默认主页面

11.error_page code ... [=response] url;

error_page 404 /404.html

error_page 404 =200 /404.html

12.try_files file ...url;

try_files file ... =code;

尝试查找1至N-1个文件,第一个即为返回给请求者的资源,若找不到,择跳转至最后一个url(该url不能匹配至当前的location,否则会出现死循环)

13.keepalive_timeout timeout [header_timeout];

设定keepalive连接的超时时长;0表示禁止长连接;默认为75s;

14.keepalive_requests number;

在keepalive连接上所允许请求的最大资源数量;默认100

15.keepalive_disable none | browser ... ;

指明禁止为何种浏览器使用keepalive功能;

16.send_timeout

发送相应报文的超时时长,默认60s

17.client_body_buffer_size size;

接收客户请求报文body的缓冲区大小;默认为16k;超出此指定大小时,其将被移存于磁盘上

18.client_body_temp_path path [level1 [level2 [level3]]]

设定用于存储客户端请求body的临时存储路径及子目录结构和数量

client_body_temp_path /var/tmp/client_body 2 2;

19.limit_except METHOD {...}

对指定范围之外的其他方法进行访问控制;

limit_except GET {

allow 172.16.0.0/16;

deny all;

}

20.limit_rate speed;

限制客户端每秒所能传输的字节数,默认为0表示无限制

文件操作优化相关的配置

21. aio on|off

22.directio size|off

enable the use of the O_DIRECT flag,when reading files that are bigger than or equal to the specified size;

23.open_file_cache off;

open_file_cache max=N [inactive=time]

nginx可以缓存以下三种信息:

文件描述符、文件大小和最近一次修改时间

打开的目录的结构

没有找到的活着没有权限操作的文件的相关信息

max=N 表示可缓存的最大条目上限,一旦达到上限,会使用LRU算法从缓存中删除最近最少使用到的缓存项;

inactive=time 指定时间内未被访问的缓存项被删除

24.open_file_cache_errors on|off

是否缓存找不到其路径的文件、或没有权限访问的文件相关信息

25.open_file_cache_valid time;

每隔多久检查一次缓存中缓存项的有效性;默认为60s

26.open_file_cache_min_users number;

缓存项在非活动期限内最少应该被访问的次数

ngx_http_access_module 模块的配置,基于ip的访问控制

27. allow address | CIDR | unix |all;

deny address | CIDR | unix |all;

应用上下文:http、server、location、limit_except

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值