概述

Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。

简介

Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:新浪、网易、 腾讯等。

优势

Nginx 可以在大多数 Unix like OS 上编译运行,并有 Windows 移植版。 Nginx 的1.4.0稳定版已经于2013年4月24日发布,一般情况下,对于新建站点,建议使用最新稳定版作为生产版本,已有站点的升级急迫性不高。Nginx 的源代码使用 2-clause BSD-like license。
Nginx 是一个很强大的高性能Web和反向代理服务器,它具有很多非常优越的特性:
在高连接并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000 个并发连接数的响应,感谢Nginx为我们选择了 epoll and kqueue作为开发模型。

HTTP基础功能

处理静态文件,索引文件以及自动索引;
反向代理加速(无缓存),简单的负载均衡和容错;
FastCGI,简单的负载均衡和容错;
模块化的结构。过滤器包括gzipping,byte ranges,chunked responses,以及 SSI-filter。在SSI过滤器中,到同一个 proxy 或者 FastCGI 的多个子请求并发处理;
SSL 和 TLS SNI 支持;
IMAP/POP3代理服务功能:
使用外部 HTTP 认证服务器重定向用户到 IMAP/POP3 后端;
使用外部 HTTP 认证服务器认证用户后连接重定向到内部的 SMTP 后

在windows环境的搭建

版本下载地址http://nginx.org/en/download.html

下载后压缩,运行命令

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAScAAAAuCAIAAADlQEhqAAACVElEQVR4nO3cW3KjMBCFYZbmpXlpLG0epialQerWkQTHxPzfEyZNowsnqSQub+/3+/V6bf/s+14e1+qyvHJF8y7lgXhVfXITZtqciNg8qhSvEgczOh5RVBz1iW6dj79bWV8yNN/6Fs2az8hTdyj+yNCbq5+f755ZGcwpzZUHZa7JKZOdm2aekPLM9CCn1//WqQNwOVIHuJE6wI3UAW6kDnAjdYAbqQPcSB3gRuoAN1IHuJE6wI3UAW6kDnAjdYAbqQPcSB3gRuoAN1IHuJE6wI3UAW5l6qIPZjK4+qb6Z9rkn1Gl9//IMtp89+wu95O6ch2VNT130S/dxaHwlJXihVHZ6KTOWgFDHkjdkr+py5+25nf9X7HuEz+yhlLX7T9962m/Yl+erpm6g+jBiqKYpHSvPka2WR/1GU3FUNn0hcrqHV7m89Xrt3gxlcEnxcotun3yl8+lpC6RLKtyPNqnfBk9Ct29n5vaSmUy5okmzZ758io9nfv1dIup28Z3bnEXt+o5GxrhFZfkxcnUlCb7/+rzm7C8ytjus1/fb/r3ulJ3+z+7i6NbfmJ99KVoUklZvkfKYPLi++zX91P+hqms2l7Imyzu4s9LfSPzB7Q7mMX66IwyL6U+uqmyPt3+4pRH5/V0J/6/7nCt+CzulW35ycubRwPutq3rk/7dJtF9k0EeDvRxRpK1jSbSnHLUR1yTx/G8N0XZXdwH+3Ut2zvC8m/PuBv260K8DxNwI3WAG6kD3Egd4EbqADdSB7iROsCN1AFupA5wI3WAG6kD3Egd4EbqALM/s8w5W8kNd/EAAAAASUVORK5CYII=" alt="" />

查看是否运行成功(注意需要先关闭其它占用80端口的进程)

aaarticlea/png;base64,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" alt="" />

好了,现在我们测试了,输入localhost,即可以看到nginx的页面

aaarticlea/png;base64,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" alt="" />

下面我的自己的网站加一个nginx服务,我们需要修改/conf/nginx.conf配置文件,内容如下

#定义Nginx运行的用户和用户组
user www www; #nginx进程数,建议设置为等于CPU总核心数。
worker_processes 8; #全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]
error_log ar/loginx/error.log info; #进程文件
pid ar/runinx.pid; #一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(系统的值ulimit -n)与nginx进程数相除,但是nginx分配请求并不均匀,所以建议与ulimit -n的值保持一致。
worker_rlimit_nofile 65535; #工作模式与连接数上限
events
{
#参考事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll模型是Linux 2.6以上版本内核中的高性能网络I/O模型,如果跑在FreeBSD上面,就用kqueue模型。
use epoll;
#单个进程最大连接数(最大连接数=连接数*进程数)
worker_connections 65535;
} #设定http服务器
http
{
include mime.types; #文件扩展名与文件类型映射表
default_type application/octet-stream; #默认文件类型
#charset utf-8; #默认编码
server_names_hash_bucket_size 128; #服务器名字的hash表大小
client_header_buffer_size 32k; #上传文件大小限制
large_client_header_buffers 4 64k; #设定请求缓
client_max_body_size 8m; #设定请求缓
sendfile on; #开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常把这个改成off。
autoindex on; #开启目录列表访问,合适下载服务器,默认关闭。
tcp_nopush on; #防止网络阻塞
tcp_nodelay on; #防止网络阻塞
keepalive_timeout 120; #长连接超时时间,单位是秒 #FastCGI相关参数是为了改善网站的性能:减少资源占用,提高访问速度。下面参数看字面意思都能理解。
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k; #gzip模块设置
gzip on; #开启gzip压缩输出
gzip_min_length 1k; #最小压缩文件大小
gzip_buffers 4 16k; #压缩缓冲区
gzip_http_version 1.0; #压缩版本(默认1.1,前端如果是squid2.5请使用1.0)
gzip_comp_level 2; #压缩等级
gzip_types text/plain application/x-javascript text/css application/xml;
#压缩类型,默认就已经包含textml,所以下面就不用再写了,写上去也不会有问题,但是会有一个warn。
gzip_vary on;
#limit_zone crawler $binary_remote_addr 10m; #开启限制IP连接数的时候需要使用 upstream blog.ha97.com {
#upstream的负载均衡,weight是权重,可以根据机器配置定义权重。weigth参数表示权值,权值越高被分配到的几率越大。
server 192.168.80.121:80 weight=3;
server 192.168.80.122:80 weight=2;
server 192.168.80.123:80 weight=3;
} #虚拟主机的配置
server
{
#监听端口
listen 80;
#域名可以有多个,用空格隔开
server_name www.ha97.com ha97.com;
index index.html index.htm index.php;
root /data/www/ha97;
location ~ .*.(php|php5)?$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
#图片缓存时间设置
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 10d;
}
#JS和CSS缓存时间设置
location ~ .*.(js|css)?$
{
expires 1h;
}
#日志格式设定
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
#定义本虚拟主机的访问日志
access_log ar/loginx/ha97access.log access; #对 "/" 启用反向代理
location / {
proxy_pass http://127.0.0.1:88;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
#后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#以下是一些反向代理的配置,可选。
proxy_set_header Host $host;
client_max_body_size 10m; #允许客户端请求的最大单文件字节数
client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数,
proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_send_timeout 90; #后端服务器数据回传时间(代理发送超时)
proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时)
proxy_buffer_size 4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的设置
proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size 64k;
#设定缓存文件夹大小,大于这个值,将从upstream服务器传
} #设定查看Nginx状态的地址
location /NginxStatus {
stub_status on;
access_log on;
auth_basic "NginxStatus";
auth_basic_user_file confpasswd;
#htpasswd文件的内容可以用apache提供的htpasswd工具来产生。
} #本地动静分离反向代理配置
#所有jsp的页面均交由tomcat或resin处理
location ~ .(jsp|jspx|do)?$ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080;
}
#所有静态文件由nginx直接读取不经过tomcat或resin
location ~ .*.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$
{ expires 15d; }
location ~ .*.(js|css)?$
{ expires 1h; }
}
}

上面内容中出现的反射代理,可以阅读这篇文章

Nginx系列~概念与windows下环境搭建的更多相关文章

  1. Redis的简单介绍及在Windows下环境搭建

    简单介绍 1,Redis是什么 最直接的还是看官方的定义吧. Redis is an open source (BSD licensed), in-memory data structure stor ...

  2. 数据科学家Docker历险记(1):windows下环境搭建

    原文:http://www.xueqing.tv/cms/article/247 Docker是最近炒得很火热的一门技术,在网上可以找到关于它的介绍文章,比如<Docker到底是什么?为什么它这 ...

  3. redis cluster以及master-slave在windows下环境搭建

    一.redis cluster环境搭建: 1.了解Redis Cluster原理: 详细了解可参考:http://doc.redisfans.com/topic/cluster-tutorial.ht ...

  4. Android Studio JNI/NDK 编程(二) Windows 下环境搭建 demo 开发

    环境 windows 8  (注:其实 Linux 开发可能更方便) Android Studio 2.1; 一 . 下载 安装android-ndk开发包 地址:链接:http://pan.baid ...

  5. Egret入门(二)--windows下环境搭建

    准备材料 安装Node.js TypeScript编辑器 HTTP服务器(可选) Chorme(可选) Egret 安装Node.js 打开www.nodejs.org 下载安装(全部next,全默认 ...

  6. pixhawk原生固件在Windows下环境搭建笔记

    首先参考了以下几篇博客 博客1:https://zhuanlan.zhihu.com/p/25198079 博客2:http://blog.csdn.net/oqqenvy12/article/det ...

  7. Google Web Toolkit(GWT) 在windows下环境搭建

    1.什么是GWT? Google Web Toolkit(简称GWT,读作/ˈɡwɪt/),是一个前端使用JavaScript,后端使用Java的AJAX framework,以Apache许可证2. ...

  8. Elasticsearch、Kibana Windows下环境搭建

    Elasticsearch 簡介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是 ...

  9. Windows下快速搭建安卓开发环境android-studio

    Windows下快速搭建安卓开发环境android-studio 发布时间:2018-01-18 来源:网络 上传者:用户 关键字: 安卓 搭建 Android Windows 快速 环境 Studi ...

随机推荐

  1. logback logback.xml 常用配置详解

    一:根节点<configuration>包含的属性: scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true. scanPeriod: 设置监测配置文 ...

  2. C primer plus 读书笔记第十四章

    这一章主要介绍C语言的结构和其他数据形式,是学习算法和数据结构的重点. 1.示例代码 /*book.c -- 仅包含一本书的图书目录*/ #include <stdio.h> #defin ...

  3. Android带参数链接请求服务器

    public void taste() { //设默认值 SharedPreferences.Editor editor = this.getSharedPreferences("setti ...

  4. BestCoder冠军赛 - 1005 Game 【DP】

    [题意] 给出一个set,set中有几个数. 现在给出n个人,环成一圈搞约瑟夫... 开始时从第1号报数,每次从set中随机选出一个数s,等报数到s后,报s的人出圈,其他人继续报数. 最后只剩1人时, ...

  5. POJ 1470 Closest Common Ancestors(LCA&RMQ)

    题意比较费劲:输入看起来很麻烦.处理括号冒号的时候是用%1s就可以.还有就是注意它有根节点...Q次查询 在线st算法 /*************************************** ...

  6. 各种开发语言示例调用WebService接口

    ASP示例: <% uid="账号"pwd="密码"tos="13900041123"msg="你们好"url = ...

  7. android开发中的5种存储数据方式

    数据存储在开发中是使用最频繁的,根据不同的情况选择不同的存储数据方式对于提高开发效率很有帮助.下面笔者在主要介绍Android平台中实现数据存储的5种方式. 1.使用SharedPreferences ...

  8. C#中的线程二(BeginInvoke和Invoke)

    近日,被Control的Invoke和BeginInvoke搞的头大,就查了些相关的资料,整理如下.感谢这篇文章对我的理解Invoke和BeginInvoke的真正含义 . (一)Control的In ...

  9. JQuery中根据属性或属性值获得元素

    根据属性获得元素 1.比如要获取页面p标签中属性有id的元素 $("p[id]").css("color","red"); 根据属性值获得元 ...

  10. OC - 16.大文件下载

    大文件下载注意事项 若不对下载的文件进行转存,会造成内存消耗急剧升高,甚至耗尽内存资源,造成程序终止. 在文件下载过程中通常会出现中途停止的状况,若不做处理,就要重新开始下载,浪费流量. 大文件下载的 ...