reactjs - 使用 Nginx 从同一服务器提供多个 React 应用程序
问题描述
我从 Nginx 中的同一个服务器块为多个反应应用程序提供服务。我将这些路由从 nginx 转发到每个反应应用程序的 index.html,我在每个位置添加了一个 try_files:
我的 nginx 配置:
server {
listen 80;
location /nest/ {
alias /Users/harikrishnan/turbolab/nest-ui/build;
try_files $uri /index.html;
}
location /nest/dataviewer/ {
alias /Users/harikrishnan/turbolab/dataviewer/dataviewer/build;
try_files $uri /index.html;
}
}
问题是,当我浏览到/nest/dataviewer
它时,它会重定向到/nest/
. 这显然不是预期的,因为我想让每个位置都转发到index.html
合适的项目。
解决方案
正则表达式 (^nest/dataviewer)
与以 开头的 URI 不匹配/nest/dataviewer
。您缺少领先的/
.
该location ~* {
语句缺少任何正则表达式,我很惊讶nginx
接受它。
在这种情况下,您应该使用location
更有效的前缀。有关详细信息,请参阅此文档。
例如:
location /nest/dataviewer { ... }
location / { ... }
推荐阅读
- java - 项目未显示在数据库的回收站视图中
- python - 从函数中获取输入变量的名称
- python - 数据流 SDK 版本
- java - 使用带有用户但没有密码的 JMS 访问 IBM MQ 8
- python-3.x - 使用硒进行网页抓取时如何获取文本值?
- java - 如何通过 Hashmap 修复循环
> 分配比预期更多的值 - javascript - 关联表时 phpmyadmin 中的致命错误
- service-worker - “未捕获(承诺)ReferenceError:未定义文件”(newtab-serviceworker.js)
- javascript - svg img上的时钟淡入动画
- c - 如何从另一个文件访问c代码中嵌套结构的指针成员