我正在Nginx的同一服务器块中提供多个React应用,我正在将这些路由从Nginx转发到每个React应用的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
。
答案 0 :(得分:0)
正则表达式 (^nest/dataviewer)
与以/nest/dataviewer
开头的URI不匹配。您缺少开头的/
。
location ~* {
语句缺少任何正则表达式,我很惊讶nginx
接受它。
在这种情况下,您应该使用前缀location
,这样效率更高。有关详细信息,请参见this document。
例如:
location /nest/dataviewer { ... }
location / { ... }