前些天刚过来新公司上班,公司的项目都挺多的,只不过项目都是第三方公司团队开发的,现在本公司要组建自己的团队,我作为一个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

全部完成了,第一次写那么长篇大论的,写得不好,请原谅,还有欢迎各位大神指点,要是还有小白不懂的,请留言!!!!!

愿自己每天进步一点点

哈哈哈

最新文章

  1. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 几十套业务系统集中统一授权管理实现经验分享
  2. 用css改变鼠标选中文字的样式
  3. ssh 密码登陆
  4. Oracle练习题(1~19)
  5. WinMain初始化详细过程以及消息循环
  6. c# dataset 索引0没有值
  7. Oracle中NVARCHAR2字符集不匹配问题
  8. 拿起cl.exe,放下IDE
  9. Ajax异步请求XMLHttpRequest对象Get请求
  10. Java 实现下载
  11. 修改iptables后重启返回错误
  12. [python] ThreadPoolExecutor线程池 python 线程池
  13. 516. Longest Palindromic Subsequence最长的不连续回文串的长度
  14. JavaSE 软件工程师 认证考试试卷2
  15. Mysql 创建用户并授权
  16. (完全背包) Piggy-Bank (hdu 1114)
  17. Go 在 TiDB 的实践
  18. SQL Server 2012中LEAD函数简单分析
  19. 快速打开 Mac OS X 隐藏的用户资源库文件夹
  20. tp5允许跨域

热门文章

  1. 【linux】shell代码,获取当前路径,创建文件夹
  2. Python中什么是深拷贝和浅拷贝且有什么区别
  3. PHP编译安装时常见错误解决办法
  4. 开启Java之旅
  5. SqlServer 分页存储过程
  6. 为什么dbms_metadata.get_ddl显示不全?
  7. redis性能监控(一): Redis Info 命令 - 获取 Redis 服务器的各种信息和统计数值
  8. 最小生成树模板【kruskal & prim】
  9. Lambda表达式树解析(下)
  10. C语言关于进制转换,补码, 整数的位操作