一、前言
Nginx是毛子开发的一款高性能的HTTP和反向代理服务器,有点类似于毛子的性格简单粗暴。由于其性能还有配置简单所以采用了Nginx作为HTTP服务器,加上之前也用过和配置过Apache服务器但是发现相对于Nginx配置上要复杂一点。
话不多说下面就是Nginx的安装与配置。
二、下载安装
本次的系统环境为contos6.x 64位。
在百度上以Nginx为关键词搜索,找到Nginx官网择最新的稳定版下载即可,下载完成后编译安装前还需要做一些准备工作。
gcc环境。Nginx是由C语言编写的,所以编译的时候依赖gcc环境,没有gcc环境需要进行安装:yum install -y gcc-c++。
PCRE。是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库:yum install -y pcre pcre-devel。
gzip。提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库:yuminstall -y zlib zlib-devel。
openssl。用于支持https:yum install -y openssl openssl-devel。
最后进行编译安装,编译之前使用configure检查环境是否适合安装,然后使用make命令进行编译,编译完成后使用make install进行安装。
以上安装都是进行默认安装,安装后的配置文件放在/usr/local/nginx/conf/文件夹下。
三、配置
首先配置的肯定是动静分离,静态文件交给Nginx来处理,动态请求转发给tomcat。动静分离是为了更好的提高系统的处理能力,使得能够各司其职。
上图配置首先是将请求/目录的转发到tomcat上,然后/static/目录的请求的话就直接作为HTTP服务器处理文件请求。使得请求静态文件不用经过tomcat,而是直接由Nginx处理。
Nginx还可以开启网页压缩减少数据的传输,使得相同带宽下加载更快。
gzip on 开启gzip
gzip_min_length 启用gizp压缩的响应临界值大小
gzip_comp_level 压缩等级
gzip_types 设置对那些文件进行压缩(不建议压缩图片文件)
gzip_disable 去除哪些浏览器版本
gzip_vary 给CDN和代理服务器使用,针对相同url,可以根据头信息返回压缩和非压缩副本
设置反向代理,请求/ciyun/目录下时转发到别的服务器上或者端口上,为了实现ajax请求不出现跨域的情况。