Nginx
简介
Nginx是一个高性能的Http反向代理服务器,也是一个IMAP/pop3/SMTP服务器。官方测试Nginx能够支撑五万并发请求,并且CPU、内存等资源消耗非常低,运行非常稳定,这也是国内外各大互联网使用nginx的原因。
nginx四个作用!
1.http服务器。
2.虚拟主机。
3.反向代理。
4.负载均衡。
HTTP服务器
NGINX本身也是一个静态资源的服务器,当只有静态资源的时候,就可以使用Nginx来做服务器。
server {
listen 80;
server_name localhost;
client_max_body_size 1024M;
location / {
root D:\root;
index index.html;
}
}
这样如果访问http://localhost就会默认访问到D盘root目录下的index.html,如果一个网站只是静态的话,那就可以通过这种方式来实现部署。
虚拟主机
虚拟主机是一个在同一台及其搭建属于不同域名或者基于不同IP的多个网站服务的技术,可以为运行在同一物理机器上的各个网站指配不同的IP和端口,也可以让多个网站拥有不同的域名。
1.基于端口的虚拟主机。
2.基于域名的虚拟主机。
基于端口的虚拟主机配置:
server {
listen 81;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
基于域名的虚拟主机:
server {
listen 80;
server_name bbb.jyw2.com;
location / {
root html/bbb;
index index.html index.htm;
}
}
反向代理
反向代理方式是指服务器来接受Internet上的链接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet上请求链接的客户端,此时代理服务器对外就表现为一个反向代理服务器。简单来说就是真实的服务器不能直接被外部网络访问,所以需要一台代理服务器,而代理服务器能被外部网络访问的同时又跟真实服务器在同一个网络环境,当然也可能是同一台服务器,端口不同而已。
配置如下:
server {
listen 80;
server_name www.123.com;
location / {
proxy_pass http://127.0.0.1:8080;
index index.html index.htm index.jsp;
}
}
负载均衡
随着网站负载的不断增加,负载均衡(load balance)已不是陌生话题。负载均衡是将流量负载分摊到不同的服务单元,保证服务器的高可用,保证响应足够快,给用户良好的体验。
nginx第一个公开版发布于2004年。2011年发布了1.0版。它的特点是稳定性高、功能强大、资源消耗低。从服务器市场占有率来看,nginx已有与Apache分庭抗礼势头。其中,不得不提到的特性就是其负载均衡功能,这也成了很多公司选择它的主要原因。
负载均衡其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。简单而言就是当有2台或以上服务器时,根据规则随机的将请求分发到指定的服务器上处理,负载均衡配置一般都需要同时配置反向代理,通过反向代理跳转到负载均衡。而Nginx目前支持自带3种负载均衡策略,还有2种常用的第三方策略。
nginx常用命令
nginx -s quit 优雅停止nginx,有连接时会等连接请求完成再杀死worker进程
nginx -s reload 优雅重启,并重新载入配置文件nginx.conf
nginx -s reopen 重新打开日志文件,一般用于切割日志
nginx -v 查看版本
nginx -t 检查nginx的配置文件
nginx -h 查看帮助信息
nginx -c filename 指定配置文件
nginx -V 详细版本信息,包括编译参数