nginx - 在 NGINX 后面时所有网站链接都断开
问题描述
我在服务器 A 上有一个网站 w1,在服务器 BI 上安装了 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/;
}
谢谢
解决方案
我找不到实现这一目标的方法。解决方法如下: https ://www.billbogaiv.com/posts/net-core-hosted-on-subdirectories-in-nginx 当然,这对我来说是解决方案,因为我正在编写的应用程序是这样做是使用 asp .net 核心。对于其他情况,它肯定会有所不同。总体思路是这样的;
asp .net 核心有一些功能可以添加到它生成的相对链接,对于 a 和链接(css)标签中的 hrefs,img 和脚本标签中的 src 等,您指定的 nginx 配置位置块中的 url 的位置部分它在某些配置中(application.json 或在您的应用程序启动逻辑中硬编码)。
如果您选择的框架本身不支持此功能,您将在其中构建它。
推荐阅读
- spring-data - 我可以在 spring-data-couchbase 中为抽象类定义一个存储库吗?
- android - 如何从firebase文档中获取数据以存储并以另一种方法使用
- soql - 如何在 Informatica 中的 SOQL 过滤条件中获取 xyz=当前年份的数据
- android - 找不到设备android studio | ADB 显示设备但 Studio 不能
- javascript - 使用 Whatsapp API 开发 Chrome 扩展程序
- css - 无法使用 styled-components 将样式应用于 React Native 中的自定义组件?
- r - 使用 mutate 计算条件比例
- r - 在 R 中创建马赛克图
- python - 我如何使用while循环解决这个问题?我尝试但我无法崩溃
- ruby-on-rails - Rails 搜索表单 - 不呈现结果