详解Nginx服务器配置
Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能。并且支持很多第三方的模块扩展。Nginx的稳定性、功能集、示例配置文件和低系统资源的消耗让他后来居上,在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。
一、Nginx配置文件的整体结构
1.1 全局块
该部分配置主要影响Nginx全局,通常包括下面几个部分:(1)配置运行Nginx服务器用户(组)(2)worker process数(3)Nginx进程PID存放路径(4)错误日志的存放路径(5)配置文件的引入
1.2 events块
该部分配置主要影响Nginx服务器与用户的网络连接,主要包括:(1)设置网络连接的序列化(2)是否允许同时接收多个网络连接(3)事件驱动模型的选择(4)最大连接数的配置
1.3 http块
(1)定义MIMI-Type(2)自定义服务日志(3)允许sendfile方式传输文件(4)连接超时时间(5)单连接请求数上限
1.4 server块
(1)配置网络监听(2)基于名称的虚拟主机配置(3)基于IP的虚拟主机配置
1.5 location块
(1)location配置(2)请求根目录配置(3)更改location的URI(4)网站默认首页配置
二、Nginx常用功能
2.1 Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理。Nginx在做反向代理时,提供性能稳定,并且能够提供配置灵活的转发功能。Nginx可以根据不同的正则匹配,采取不同的转发策略,比如图片文件结尾的走文件服务器,动态页面走web服务器,只要你正则写的没问题,又有相对应的服务器解决方案,你就可以随心所欲的玩。并且Nginx对返回结果进行错误页跳转,异常判断等。如果被分发的服务器存在异常,他可以将请求重新转发给另外一台服务器,然后自动去除异常服务器。
2.2 负载均衡
Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。扩展策略,就天马行空,只有你想不到的没有他做不到的啦,你可以参照所有的负载均衡算法,给他一一找出来做下实现。Ip hash算法,对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题。 2.3 web缓存
Nginx可以对不同的文件做不同的缓存处理,配置灵活,并且支持FastCGI_Cache,主要用于对FastCGI的动态程序进行缓存。配合着第三方的ngx_cache_purge,对制定的URL缓存内容可以的进行增删管理。
三、Docker容器中安装vim
由于容器中不能打开文本类型文件,这是需下载安装编辑器。
3.1 首先进入容器
docker exec -ti 容器名称 /bin/bash
例如:
docker exec -ti nginx /bin/bash
3.2 接下来更新下apt-get的源。把下面的命令全部复制粘到容器的控制台执行:
mv /etc/apt/sources.list /etc/apt/sources.list.bak && \ echo "deb http://mirrors.163.com/debian/ jessie main non-free contrib" >/etc/apt/sources.list && \ echo "deb http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list && \ echo "deb-src http://mirrors.163.com/debian/ jessie main non-free contrib" >>/etc/apt/sources.list && \ echo "deb-src http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list
3.3 更新安装源
apt-get update
3.4 执行命令:
apt-get install vim -y
四、本篇未完待续
明天更新《Nginx代理服务器的配置》。
- 点赞
- 收藏
- 关注作者
评论(0)