nginx代理讲的很好理解:https://www.cnblogs.com/ysocean/p/9392908.html

一、nginx应用场景:

1.反向代理(用的非常多)

客户端发出请求,反向代理服务器接收到请求后,通过选择服务器给目标服务器,然后目标服务器再把数据给nginx,nginx再把数据给客户端,nginx代理的是服务器,两者都是向外的,所以叫反向代理服务器

暴露的是代理服务器地址,隐藏的是真实服务器地址(然后无论访问,你都看不到真实服务器地址)

2.负载均衡(常用)

通俗就是将这一项业务功能,随机分给多个服务器执行,也是避免了一个服务器挂了,就over的情况,因为可以访问到其他的。

3.HTTp服务器

动静分离

4.正向代理:代理的是客户端,客户端要进行一些配置

我们知道国内是访问不了google,美国那才能访问,那么我们电脑要是对外的公网ip为美国的ip不就可以访问了嘛。

所以就有了VPN,这个就是一个中间服务,帮我们代理的。如果我们想访问google,我们就连上VPN,我们的ip就变成了美国的ip,然后就可以访问了

二 windows下载 及安装

下载稳定版本,以nginx/Windows-1.12.2为例,直接下载 nginx-1.12.2.zip

解压后如下

启动:点击nginx.exe 或者到本页面下的cmd管理员模式,start nginx.exe。

验证启动成功:浏览器访问http://localhost:80    看到如下,说明成功启动

基础命令:在nginx目录下cmd模式

启动: start nginx.exe

停止:nginx -s stop

改了配置后重启:nginx -s reload

三、小例子:nginx代理tomcat

1. 修改 conf ->nginx -conf

然后重启

2.浏览器访问:http://localhost:80

如下

说明反向代理成功。

四、对代理tomcat进一步改造

我们知道实际需求是需要把文件进行过滤,tomcat是servlet容器可以处理jsp,nginx不可以处理jsp。那么就让tomcat处理jsp,nainx来处理静态资源,html,css,js,图片等

修改如下:

nginx  -s reload 重启

2.访问 localhost:80 会报404

笔者认为/这个是匹配所有,现在去掉了,访问时,就得具体点。

3.输入:http://localhost:80/index.jsp 结果如下

说明反向代理成功

五.继续改造:我们知道可以负载均衡,可以避免一台服务器挂了,就访问不到了的情况。

1.修改配置文件 如下:

重启 ,然后localhost:80 访问 报如下错

经过分析认为是下划线_出的错

改成如下

重启

localhost:80 访问 ,

实战代理项目:请看  https://www.cnblogs.com/yiyezhiqiuwuchen/p/12191072.html

nginx下载,安装,基础命令,和代理tomcat例子理解的更多相关文章

  1. nginx之旅(第一篇):nginx下载安装、nginx启动与关闭、nginx配置文件详解、nginx默认网站

    一.nginx下载安装 版本nginx 1.15.5 系统环境centos7.5(本机ip192.168.199.228) 关闭selinux 和防火墙firewall 1.下载 wget http: ...

  2. nginx下载安装和虚拟机的配置

    一. Nginx下载安装 1.Nginx下载:nginx-1.13.0.tar.gz,下载到:/usr/local/software/ wget http://nginx.org/download/n ...

  3. nginx windows安装基础

    nginx在 window上运行需要1.17.3以上. 官方文件https://nginx.org/en/docs/windows.html nginx启动: 1:进入安装目录,双击nginx.exe ...

  4. Nginx下载安装

    系统环境:win7 nginx:1.11.4 1.下载Nginx 下载地址:http://nginx.org/en/download.html 2.将压缩包解压到相应位置 3.启动nginx服务,ng ...

  5. maven基础--下载安装配置命令生命周期

    maven apache 公司开源项目,项目构建工具 好处: 项目小 坐标:公司名称+项目名称+版本信息 通过坐标去 仓库查找jar包 maven的两大核心: *赖管理:对jar包管理过程. 项目构建 ...

  6. Linux centos nginx下载安装初步

    下载源码包解压编译 1.下载 # wget http://nginx.org/download/nginx-1.9.9.tar.gz 2.解压 # tar xvf nginx-1.9.9.tar.gz ...

  7. centos和Ubuntu系统最小化安装基础命令

    CentOS系统常用的基础软件如下 yum install vim iotop bc gcc gcc-c++ glibc glibc-devel pcre \ pcre-devel openssl o ...

  8. Docker系列——Docker安装&基础命令

    Docker 概述 Docker 是一个开源的应用容器引擎,Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化. ...

  9. 我的 Kafka 旅程 - Linux下的安装 & 基础命令

    准备工作 安装解压缩工具 tar # 检查是否安装了解压缩工具 tar yum list tar # 如未安装 tar yum install tar -y 安装必备的 java # 检查是否安装了 ...

随机推荐

  1. 大二网课ing学习周记

    行稳致远,久久为功! 一个概念套着一个概念哦!码就是关键字,标识属性是也! 1.什么是主码和外码,请举例说明. 关键字也叫码! 首先,在一个关系中,能惟一标识元组的属性or最小属性集称为关系的候选码. ...

  2. What is NodeJS(学习过程)

    为什么要学习node.首先是听说了这个和前后端分离有很大的关系.node作为一个基础的技术,需要提前学习.学习node,不打算直接先跟着视频去学习老师们的课程.因为想自己找到一种适合自己的学习方法.之 ...

  3. 静态库&动态库&导入库

    我遇到的问题 先贴一个StackOverflow上的问题 上面的问题让我知道了更多动态库的知识. 我需要使用一个声音库(irrKlang)为2d游戏提供声音,我使用的编译器是mingw-w64,但是i ...

  4. 初始socket编程

    服务端语法 import socket # 导入套接字模块# 生成一个socket对象进行网络编程操作server = socket.socket(family=socket.AF_INET, typ ...

  5. Windows显示默认桌面图标(计算机,用户的文件,网络,控制面板,回收站)

    1.按Win+R 2.复制以下命令 rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0 3.点击运行,根据需求勾选相应图标即可

  6. Navicat Premium15安装与激活(破解)

    Navicat premium是一款数据库管理工具,是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到 MySQL.SQLite.Oracle 及 PostgreSQL 资料库,让管理不 ...

  7. Android ListView的批量处理(多选/反选/删除)

    在Android开发中经常遇到使用ListView的情况,有时候需要的不仅仅是列表显示,还有长按列表进行多选,并且批量删除的情况,在这里记录一下自己的所学. 先上效果图: 几个需要用到的核心方法: / ...

  8. mysql修改密码、创建用户、开放远程

    创建密码: MariaDB [(none)]> use mysql; MariaDB [mysql]> UPDATE user SET password=password('newpass ...

  9. 聊聊智能指针 auto_ptr、shared_ptr、weak_ptr和unique_ptr

    本文为转载:https://www.cnblogs.com/zeppelin5/p/10083597.html,对作者有些地方做了修正. 手写代码是理解C++的最好办法,以几个例子说明C++四个智能指 ...

  10. [CF1303A] Erasing Zeroes

    Solution 找到边界然后循环扫一遍数个数即可 #include <bits/stdc++.h> using namespace std; int n; const int N = 1 ...