【发布时间】:2016-04-13 14:28:19
【问题描述】:
我有两个 Web 应用程序(node.js express 应用程序),web1 和 web2。这些 Web 应用程序希望托管在通常类似于 http://www.web1.com 和 http://www.web2.com 的网站上。我想以https://www.example.com/web1 和https://www.example.com/web2 将它们托管在nginx 反向代理后面。我不想在example.com 上将这两个 Web 应用程序公开为两个子域。
这是我的 nginx 配置的 sn-p(没有 SSL 终止详细信息),我希望它可以完成此操作:
server {
listen 443;
server_name .example.com;
location /web1 {
proxy_pass http://www.web1.com:80;
}
location /web2 {
proxy_pass http://www.web2.com:80;
}
}
除了网络应用程序使用的相对链接外,这有效。所以网络应用 web1 将有一个像 /js/script.js 这样的相对链接,它不会被正确处理。
完成此任务的最佳/标准方法是什么?
【问题讨论】:
-
我不知道 ngix,但在 web 请求中有一个 http referrer,它是当前请求“之前”的页面。你能在 ngix 中映射引用者吗?
-
我看到一些地方认为这是一个潜在的解决方案,但我不确定如何实施。