Nginx

Posted 0221ljw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx相关的知识,希望对你有一定的参考价值。

1. nginx相关概念

1.1. 反向代理

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

 技术分享图片

 

1.2. 负载均衡

负载均衡,英文名称为Load Balance,是指建立在现有网络结构之上,并提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。其原理就是数据流量分摊到多个服务器上执行,减轻每台服务器的压力,多台服务器共同完成工作任务,从而提高了数据的吞吐量。

 

技术分享图片

 

2. Nginx的安装

2.1. 下载nginx

官网:http://nginx.org/

2.2. 上传并解压nginx

tar -zxvf nginx-1.8.1.tar.gz -C /usr/local/src

2.3. 编译nginx

#进入到nginx源码目录

cd /usr/local/src/nginx-1.8.1

 

#检查安装环境,并指定将来要安装的路径

./configure --prefix=/usr/local/nginx

 

#缺包报错 ./configure: error: C compiler cc is not found

 

#使用YUM安装缺少的包

yum -y install gcc pcre-devel openssl openssl-devel

 

#编译安装

make && make install

 

安装完后测试是否正常:

/usr/loca/nginx/sbin/nginx

查看端口是否有ngnix进程监听

netstat -ntlp | grep 80

 

3. 配置nginx

3.1. 配置反向代理

1.修改nginx配置文件

server {

    listen       80;

    server_name  nginx-01.itcast.cn;    #nginx所在服务器的主机名

#反向代理的配置

location / {             #拦截所有请求

    root html;

        proxy_pass http://192.168.0.21:8080;   #这里是代理走向的目标服务器:tomcat

    }

}

2.启动tomcat-01上的tomcat

 

3.启动nginx-01上的nginx

./nginx

 

重启:

kill -HUP `cat /usr/local/nginx/logs/nginx.pid `

参考网址:http://www.cnblogs.com/jianxie/p/3990377.html

 

3.2. 动静分离

#动态资源 index.jsp

location ~ .*.(jsp|do|action)$ {

    proxy_pass http://tomcat-01.itcast.cn:8080;

}

 

#静态资源

location ~ .*.(html|js|css|gif|jpg|jpeg|png)$ {

    expires 3d;

}

 

3.3. 负载均衡

http这个节下面配置一个叫upstream的,后面的名字可以随意取,但是要和location下的proxy_pass http://后的保持一致。

http {

    是在http里面的, 已有http, 不是在server,server外面

    upstream tomcats {

        server shizhan02:8080 weight=1;#weight表示多少个

        server shizhan03:8080 weight=1;

        server shizhan04:8080 weight=1;

}

#卸载server

location ~ .*.(jsp|do|action) {

    proxy_pass http://tomcats;        #tomcats是后面的tomcat服务器组的逻辑组号

}

}

以上是关于Nginx的主要内容,如果未能解决你的问题,请参考以下文章

NginxNginx配置REWRITE隐藏index.php

NginxNginx配置文件解析

NginxNginx基础操作

NginxNginx基础操作

NginxNginx基础操作

NginxNginx基础操作