【发布时间】:2018-12-13 17:31:04
【问题描述】:
我有一个反应应用程序(简单的前端应用程序),它在生产中位于相对路径上(例如 suite.app.com/auth)。其他应用程序在不同的路径上。因此,我需要将此应用程序的所有静态文件请求通过 nginx 路由到 /auth。从 nginx 的角度来看,这基本上可以正常工作,但从反应的角度来看,我需要路径是相对的:
在我的 package.json 中,我添加了 "homepage": "./",
在我的 index.html 中我添加了<base href="/auth/">
这是我所期望的。静态文件相对。但是,当我加载应用程序时,在我的服务器日志中,我可以看到这种情况:
即 something 没有将请求传递到正确的路径。 (FWIW 他们在那里返回 200 个的原因是因为根目录上有一个不同的应用程序,所以它实际上加载了其他应用程序文件,而不是这个。
任何关于这里可能发生的事情的提示都会很棒。
编辑:发布两个端点的 Nginx 配置。
server {
listen 80;
server_name app.site.com;
add_header 'Referrer-Policy' 'origin';
location /auth {
proxy_pass http://authentication.internal.app/;
proxy_set_header Host authentication.internal.app;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $proxy_protocol_addr;
proxy_set_header X-Forwarded-For $proxy_protocol_addr;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
}
location / {
proxy_pass http://dashboard.internal.app/;
proxy_set_header Host dashboard.internal.app;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $proxy_protocol_addr;
proxy_set_header X-Forwarded-For $proxy_protocol_addr;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
}
}
【问题讨论】:
-
你看到那个问题stackoverflow.com/questions/48134785/…了吗?
-
你的 Nginx 配置错误。请发布您的位置指令。
-
@miknik 发布了 nginx。谢谢
标签: javascript reactjs url react-router relative-path