Nginx 反向代理 -- 一路上的坑
前些天刚过来新公司上班,公司的项目都挺多的,只不过项目都是第三方公司团队开发的,现在本公司要组建自己的团队,我作为一个Java后台人员去接手第三方公司的全部项目,我已经是直接崩溃了(先解释一下我崩溃的原因:项目已经全部瘫痪了,完全跑不起来的那种,而且全都是PHP的语言开发的,我对PHP真的是一个小白,可是没办法,既然来了,那就上吧),我只能用一个字来形容 " 乱 ", 每一个服务器都放两三个项目,我在这只讲其中的一个,也是最难搞的那个,3个项目,1个项目开发语言是PHP,另外两个是Java的,部署环境就直接冲突了一个是PHP的集成部署,一个是Tomcat部署,3个项目都要用 80 端口,可是大家都知道 80 端口只有一个啊,我因为没接触过现在遇到的这种情况,我就到度娘那里查资料啊,也咨询过两个前辈,都是让我做一个 Nginx 反向代理,可以解决这种情况,然后我就开始着手去搭建 Nginx ,网上各种资料各种说法都有,我都试过,实在是解决不了,整整花了我一个白天的时间,后面到了晚上,我跟我另外一个朋友说了一下情况,然后两个人就继续研究啊,经过了几个小时的拼搏之后,终于实现了,我朋友的功劳比较大,因为后来是他先弄出来的,我这边只做Windows版的,好了,废话好像多了,进入主题
Nginx 的作用,可以做什么我就不说了,百度百科都有,自己上去查
1)下载Nginx 建议上官网下载稳定版的
http://nginx.org/en/download.html
2)解压出来,直接双击运行
3)这时候打开任务管理你会看到运行了两个nginx.exe的任务,不要问我问什么会运行了两个,我也还没搞懂
4)注意事项,默认启动,用默认的开启方法,会占用80端口,默认会监听80端口,请把80端口空闲,如果,在任务管理找不到nginx.exe 你就应该检查一下80端口是否被占用,
5)用localhost在浏览器访问,会看到这个页面,证明nginx启动成功
6)在 conf/nginx.conf 配置你的映射
7)我很多初学者看着那么乱的配置文件都会头疼,我那时候也一样,所以我换了一种清晰的做法,新建一个 reverse-proxy.conf 的空白文件,然后引入,看上图,include 一个文件,这个文件专门配置映射的,放 include 的位置需要注意一下,要在 http 的下面,记住,这个文件里面,除了加入一个 include 之外,别的,就不要动了,于是,我的文件就变成下面这样
8)编辑 reverse-proxy.conf 文件,这个,一整段,请按照一下方式配置,可配置多个,包括端口也可以配置多个
server {
listen 80;
server_name gdweipai.com; # 这是外网访问进来时的连接地址
location /{
proxy_redirect off;
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://gdweipai.com:8080; # 收到 server_name 定义的连接之后,会转发到这个连接里面
#proxy_pass http://tomcat;
}
#access_log logs/tomcat1_access.log;
}
我配置了4个,包括Java,PHP项目的,我的配置如下
9)到这里,算是完成了,最后,把服务器重启,nginx,重启,然后,用你自己在server_name 定义的链接访问一下,注意,必须是有效的域名,或者IP,而且不能带端口号,意思就是说, server_name 不能定义为 localhost:8080, 或者 ,127.0.0.1:8081 之类的,只能是 localhost,或者 127.0.0.1,或者有效的域名,www.baidu.com
全部完成了,第一次写那么长篇大论的,写得不好,请原谅,还有欢迎各位大神指点,要是还有小白不懂的,请留言!!!!!
愿自己每天进步一点点
哈哈哈
Nginx 反向代理 -- 一路上的坑的更多相关文章
- Nginx 反向代理 -- 一路上的坑转载
个人学习之用转子https://www.cnblogs.com/xjbBill/p/7477825.html 前些天刚过来新公司上班,公司的项目都挺多的,只不过项目都是第三方公司团队开发的,现在本公司 ...
- Nginx反向代理之巨坑underscores_in_headers
一.背景 因为项目需求,在做Windows的相关的事情:基本架构就是Nginx--> Nginx --> IIS,在Linux机器上通过Nginx做反向代理到Windows的IIS:然后遇 ...
- nginx 反向代理配置 upstream
最近项目要写后台,用nodejs写服务接口,然后研究了下nginx反向代理,各种坑下来,也总算把代理配了下来. 我本地用nodejs起了两个服务,一个端口是8888,一个端口是8889,在启动ngin ...
- nginx高性能WEB服务器系列之七--nginx反向代理
nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...
- 利用DockerHub在Centos7.7环境下部署Nginx反向代理Gunicorn+Flask独立架构
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_165 上一篇文章:Docker在手,天下我有,在Win10系统下利用Docker部署Gunicorn+Flask打造独立镜像,是在 ...
- 使用python自动生成docker nginx反向代理配置
由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一个脚本,能在docker 容器创建.停止的时候 ...
- Nginx反向代理,负载均衡,redis session共享,keepalived高可用
相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此 ...
- Nginx反向代理部署指南
一.反向代理 我们都知道,80端口是web服务的默认端口,其他主机访问web服务器也是默认和80端口进行web交互,而一台服务器也只有一个80端口,这是约定俗成的标准. 我们来看下面两个场景: 1.服 ...
- Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解
转载:http://freeloda.blog.51cto.com/2033581/1288553 大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负 ...
随机推荐
- 剑指offer 二叉树中和为某一个值的路径
剑指offer 牛客网 二叉树中和为某一个值的路径 # -*- coding: utf-8 -*- """ Created on Tue Apr 9 15:53:58 2 ...
- Nginx详解十七:Nginx深度学习篇之动静分离
动静分离:通过中间件将动态请求和静态请求分离 作用:分离资源,减少不必要的请求消耗,减少请求延时 动静分离还有个好处就是,当动态请求的后端服务出问题了,只会影响动态的部分,静态资源不影响,照样加载 如 ...
- IntersectionObserver API 使用教程
转载:原文地址:http://www.ruanyifeng.com/blog/2016/11/intersectionobserver_api.html 网页开发时,常常需要了解某个元素是否进入了&q ...
- 【转】运维DBA的4大纪律9项注意
朋友们调侃说,运维是个把脑袋别在裤腰带上的活,更有人说,运维是个把脑袋别在他人裤腰带上的活,苦劳没人认,有锅就有得背! 测试的同学说,“吃瓜群众很难感知运维背后的付出,倒是出了事情更能体现我们的专业性 ...
- Jmeter中常用的一些对字符串的处理
1)截取部分线程组的名称 group = ctx.getThreadGroup(); // 获取当前线程组 str = group.getName(); // 获取线程组的名称 str = str.s ...
- Jmeter 自动化测试报告扩展
首先了解下生成测试报告的过程,我们看到的测试报告是由.jtl格式转换为.html,html报告的样式由extras目录下xsl文件决定.优化测试报告需要分为两部分内容,首先我们要优化输出的测试内容,其 ...
- C++ Primer 笔记——lambda表达式
1.一个lambda表达式表示一个可调用的代码单元,可以理解为一个未命名的内联函数,但是与函数不同,lambda表达式可能定义在函数内部.其形式如下: [capture list] (paramete ...
- 使用python调用shell判断当前进程是否存在
使用subprocess模块判断当前进程是否存在 #! /usr/bin/env python import subprocess res = subprocess.Popen(r'ps -ef |g ...
- haproxy admin_stats端口启动错误解决
/var/log/message里的错误消息大概如下: Feb 13 09:32:50 cluster-node2 haproxy-systemd-wrapper: [ALERT] 043/09325 ...
- C# 之 判断一个字符是否是汉字
判断一个字符是不是汉字通常有三种方法: [1] 用 ASCII 码判断:[2] 用汉字的 UNICODE 编码范围判断:[3] 用正则表达式判断. 1.用ASCII码判断 在 ASCII码表中,英文的 ...