在NGINX后面时,所有网站链接均断开

时间:2018-09-18 11:57:05

标签: nginx

我在服务器A和服务器B上都有一个网站w1,我安装了NGINX。

在我的开发机器上,CI可以导航到b.uk/w1并可以看到我的主页,该主页实际位于A上。但是,当我单击链接转到页面p1时,该链接没有我的应用程序部分, w1,在网址中。

我希望b.uk/w1/p1

我得到b.uk/p1

这是NGINX的事吗?还是我需要重写我的应用程序,以便所有链接(包括.js和.css)都带有/ w1?这看起来很丑。如果它的w2在其他地方怎么办?我需要按服务器应用程序进行版本控制吗?

有没有一种方法可以使网站将/ w1视为域的一部分?我想这取决于我以前建造它的方式吗?

也许我缺少nginx设置。目前,我的位置信息非常简单:

location /w1/ {
  proxy_pass http://A/;
}

谢谢

1 个答案:

答案 0 :(得分:0)

我找不到实现此目标的方法。解决方法如下: https://www.billbogaiv.com/posts/net-core-hosted-on-subdirectories-in-nginx 当然,这是我的解决方案,因为我编写的应用程序是使用asp .net核心完成的。对于其他情况,这肯定会有所不同。总体思路是这样;

asp .net核心具有一些功能,可以附加到它生成的相对链接中,例如a和link(css)标记中的href,img和脚本标记中的src等,则是nginx配置位置块中URL的位置部分,如您在某些配置中指定的那样(在application.json或应用程序启动逻辑中对其进行硬编码)。

如果您选择的框架本身不支持此功能,则将其内置。