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 相关文章推荐
win10安装配置nginx的过程
Mar 31 Servers
Windows下使用Nginx+Tomcat做负载均衡的完整步骤
Mar 31 Servers
iSCSI服务器CHAP双向认证配置
Apr 01 Servers
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
Apr 07 Servers
nginx.conf配置文件结构小结
Apr 08 Servers
Tomcat配置访问日志和线程数
May 06 Servers
在容器中使用nginx搭建上传下载服务器
May 11 Servers
利用Apache Common将java对象池化的问题
Jun 16 Servers
Nginx配置使用详解
Jul 07 Servers
Windows Server 2016服务器用户管理及远程授权图文教程
Aug 14 Servers
Apache SkyWalking 监控 MySQL Server 实战解析
Sep 23 Servers
Valheim服务器 Mod修改安装教程 【ValheimPlus】
Dec 24 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
php中文字符串截取方法实例总结
2014/09/30 PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
2015/08/18 PHP
php实现按天数、星期、月份查询的搜索框
2016/05/02 PHP
PHP观察者模式示例【Laravel框架中有用到】
2018/06/15 PHP
根据地区不同显示时间的javascript代码
2007/08/13 Javascript
在IE6下发生Internet Explorer cannot open the Internet site错误
2010/06/21 Javascript
editable.js 基于jquery的表格的编辑插件
2011/10/24 Javascript
E3 tree 1.6在Firefox下显示问题的修复方法
2013/01/30 Javascript
js给onclick事件赋值,动态传参数实例解说
2013/03/28 Javascript
jquery $.fn $.fx是什么意思有什么用
2013/11/04 Javascript
node.js解决获取图片真实文件类型的问题
2014/12/20 Javascript
Easyui使用Dialog行内按钮布局的实例
2017/07/27 Javascript
vue+echarts实现动态绘制图表及异步加载数据的方法
2018/10/17 Javascript
js实现聊天对话框
2020/02/08 Javascript
微信小程序自定义弹出模态框禁止底部滚动功能
2020/03/09 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
[03:20]2015国际邀请赛全明星表演赛
2015/08/08 DOTA
python利用hook技术破解https的实例代码
2013/03/25 Python
python文件读写并使用mysql批量插入示例分享(python操作mysql)
2014/02/17 Python
Python通过select实现异步IO的方法
2015/06/04 Python
Python进程间通信用法实例
2015/06/04 Python
Python中set与frozenset方法和区别详解
2016/05/23 Python
详解flask表单提交的两种方式
2018/07/21 Python
对TensorFlow中的variables_to_restore函数详解
2018/07/30 Python
python 获取utc时间转化为本地时间的方法
2018/12/31 Python
完美解决Python matplotlib绘图时汉字显示不正常的问题
2019/01/29 Python
PyTorch基本数据类型(一)
2019/05/22 Python
pytorch逐元素比较tensor大小实例
2020/01/03 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
2020/05/19 Python
python中openpyxl和xlsxwriter对Excel的操作方法
2021/03/01 Python
非洲NO.1网上商店:Jumia肯尼亚
2016/08/18 全球购物
2015年社区科普工作总结
2015/05/13 职场文书
幼儿园托班开学寄语(2015秋季)
2015/05/27 职场文书
高中家长意见怎么写
2015/06/03 职场文书
二胎满月酒致辞
2015/07/29 职场文书
选对餐饮营销策略,营业额才会上涨
2019/08/27 职场文书