nginx实现反向代理

Nginx概述

  什么是nginx:

    nginx是由俄国人编写的十分轻量级的HTTP服务器,是一个高性能的HTTP和反向代理WEB服务器,同时也提供了IMAP/POP3/SMTP服务。

  nginx应用场景:

    1.http服务器

    2.虚拟主机,可以实现在一台服务器虚拟出多个网站;

    3.反向代理,负载均衡;

  nginx优缺点:

    1.占用内存小,可以实现高并发连接,处理响应类;

    2.可以实现http服务器,虚拟机主机,反向代理,负载均衡;

    3.nginx配置简单;

    4.可以不暴露真实服务IP地址;

反向代理

  什么是反向代理:

    反向代理方式是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet请求连接的客户端;

  反向代理认识:

    反向代理,其实客户端对代理是无感知的,因为客户端不需要配置任何配置就可以访问,我们只需要将请求发送到反向代理服务器上,有反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器的IP地址。

    

案例:

  步骤一:准备一个Tomcat

    

    创建一个JSP页面,用于获取真实IP和nginxIP地址,代码如下:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>反向代理</title>
</head>
<body>
    <h1>反向代理哈哈哈!</h1>
</body>
</html>

    将JSP页面上传到tomcat的webapps/ROOT目录下;

      

  步骤二:配置nginx

    打开nginx目录下的conf/nginx.conf文件

    修改文件内容如下:

      

  步骤三:启动

    修改完成后 启动Tomcat和nginx

    启动Tomcat:

      进入Tomcat文件下的bin目录

        

       使用【./startup.sh】 命令启动  

        

      启动后可使用【ps -ef | grep tomcat 】命令查看当前Tomcat的进程

        

    启动nginx:

      进入nginx文件下的sbin目录

        

      使用【./nginx】命令启动nginx

        

      使用【ps -ef | grep nginx】命令查看当前nginx进程

         

    进行页面访问:

      在nginx.conf文件里 配置了访问域名为www.a.com,端口号为80,将真正服务器上的IP地址隐藏起来,使用nginx反向代理服务器上配置的域名在端口访问;

      

原文地址:https://www.cnblogs.com/wnwn/p/12273057.html