Nginx同一个域名配置多个项目的实现方法


Posted in Servers onMarch 31, 2021

使用Nginx要在同一个域名下配置多个项目有两种方式:

  • nginx按不同的目录分发给不同的项目
  • 启用二级域名,不同的项目分配不同的二级域名

1.nginx按不同的目录分发给不同的项目:

server {
  listen  80;
  server_name example.com;
 
  location ^~ /project1 {
    proxy_pass   http://localhost:8081;
    proxy_set_header Host    $host;
    proxy_set_header X-Real-IP  $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
 
  location ^~ /project2 {
    proxy_pass   http://localhost:8082;
    proxy_set_header Host    $host;
    proxy_set_header X-Real-IP  $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
 
  location / {
    proxy_pass   http://localhost:8080;
    proxy_set_header Host    $host;
    proxy_set_header X-Real-IP  $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

这里配置了三个项目:

  • http://example.com/project1路径分发到http://localhost:8081
  • http://example.com/project2路径分发到http://localhost:8082
  • 其他路径分发到http://localhost:8080

2.启用二级域名,不同的项目分配不同的二级域名

注意:很多同学说无效,原因是一定要先对二级域名添加A记录到主机,同一个域名可以添加N个二级域名到同一个主机

server {
  listen  80;
  server_name example.com;
  location / {
    proxy_pass   http://localhost:8080;
    proxy_set_header Host    $host;
    proxy_set_header X-Real-IP  $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

project1

server {
  listen  80;
  server_name project1.example.com;
  location / {
    proxy_pass   http://localhost:8081;
    proxy_set_header Host    $host;
    proxy_set_header X-Real-IP  $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

project2

server {
  listen  80;
  server_name project2.example.com;
  location / {
    proxy_pass   http://localhost:8082;
    proxy_set_header Host    $host;
    proxy_set_header X-Real-IP  $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

注意:这三个项目属于不同的域名,项目之间通过http访问会存在跨域问题。

到此这篇关于Nginx同一个域名配置多个项目的实现方法的文章就介绍到这了,更多相关Nginx同域名配置多项目内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Servers 相关文章推荐
nginx反向代理时如何保持长连接
Mar 31 Servers
Nginx域名转发https访问的实现
Mar 31 Servers
小程序后台PHP版本部署运行 LNMP+WNMP
Apr 01 Servers
Nginx使用Lua模块实现WAF的原理解析
Sep 04 Servers
Linux安装apache服务器的配置过程
Nov 27 Servers
Apache Linkis 中间件架构及快速安装步骤
Mar 16 Servers
CentOS下安装Jenkins的完整步骤
Apr 07 Servers
Window server 2012 R2 AD域的组策略相关设置
Apr 28 Servers
openEuler 搭建java开发环境的详细过程
Jun 10 Servers
解决Git推送错误non-fast-forward的方法
Jun 25 Servers
TaiShan 200服务器安装Ubuntu 18.04的图文教程
Jun 28 Servers
nginx配置指令之server_name的具体使用
Aug 14 Servers
Apache压力测试工具的安装使用
Apache站点配置SSL强制跳转443
Mar 09 #Servers
使用Apache的rewrite
Mar 09 #Servers
nginx 设置多个站跨域
Mar 09 #Servers
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
Nginx实现反向代理
Sep 20 #Servers
destoon在各个服务器下设置URL Rewrite(伪静态)的方法
Jun 21 #Servers
You might like
让你同时上传 1000 个文件 (一)
2006/10/09 PHP
php中利用post传递字符串重定向的实现代码
2011/04/21 PHP
PHP多线程类及用法实例
2014/12/03 PHP
php使用curl通过代理获取数据的实现方法
2016/05/16 PHP
Yii2针对游客、用户防范规则和限制的解决方法分析
2016/10/08 PHP
PHP通过引用传递参数用法分析
2016/12/01 PHP
thinkphp自定义权限管理之名称判断方法
2017/04/01 PHP
详解PHP文件的自动加载(autoloading)
2018/02/04 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
2020/03/30 PHP
Aster vs Newbee BO3 第二场2.18
2021/03/10 DOTA
Js-$.extend扩展方法使方法参数更灵活
2013/01/15 Javascript
javascript中的toFixed固定小数位数 简单实例分享
2013/07/12 Javascript
js函数setTimeout延迟执行的简单介绍
2013/07/17 Javascript
JavaScript使用HTML5的window.postMessage实现跨域通信例子
2014/04/11 Javascript
使用script的src实现跨域和类似ajax效果
2014/11/10 Javascript
JavaScript使用Replace进行字符串替换的方法
2015/04/14 Javascript
jQuery实现的五子棋游戏实例
2015/06/13 Javascript
JS使用tween.js动画库实现轮播图并且有切换功能
2018/07/17 Javascript
setTimeout与setInterval的区别浅析
2019/03/23 Javascript
javascript之分片上传,断点续传的实际项目实现详解
2019/09/05 Javascript
JavaScript实现手机号码 3-4-4格式并控制新增和删除时光标的位置
2020/06/02 Javascript
js实现页面导航层级指示效果
2020/08/25 Javascript
一篇文章看懂JavaScript中的回调
2021/01/05 Javascript
[55:11]完美世界DOTA2联赛PWL S2 SZ vs LBZS 第一场 11.26
2020/11/30 DOTA
python Crypto模块的安装与使用方法
2017/12/21 Python
python 动态调用函数实例解析
2019/10/21 Python
Python树莓派学习笔记之UDP传输视频帧操作详解
2019/11/15 Python
python 计算方位角实例(根据两点的坐标计算)
2020/01/17 Python
Tensorflow实现部分参数梯度更新操作
2020/01/23 Python
pytorch简介
2020/11/11 Python
html5中嵌入视频自动播放的问题解决
2020/05/25 HTML / CSS
北美三大旅游网站之一:Travelocity加拿大
2016/08/20 全球购物
中专毕业生求职简历的自我评价
2013/10/21 职场文书
团工委书记自荐书范文
2013/12/17 职场文书
函授毕业自我鉴定
2014/02/04 职场文书
党员学习群众路线教育实践活动对照检查材料
2014/09/23 职场文书