【问题标题】:HTML Base href not taken into account for link static resources and CSS链接静态资源和 CSS 未考虑 HTML Base href
【发布时间】:2018-11-15 23:29:56
【问题描述】:
我有一个 Angular 5 应用程序,我将它部署到容器子文件夹,例如 webapps/myapp。我需要这个,因为我将在同一个容器中托管多个小型 Web 应用程序。我正在尝试从相对路径制作 favicon.ico 和 css 文件,因为我不想在 html 中硬编码子文件夹的名称。
请在下图中观察,悬停时 2 个链接 href 指向 localhost:8080 而不是所需的 localhost:8080/myapp/favicon.ico 和 localhost:8080/myapp /assets/forms.css。我用“./”都试过了,没有它也没有运气......
我做错了什么?
【问题讨论】:
标签:
html
css
angular5
href
web-deployment
【解决方案1】:
我做错了什么?
您没有指定正确的基本 href 开头。
<base href="/myapp">
所以这实际上是相同的,就好像您以 http://example.com/myapp 开头(没有指定 base),并且将根据该初始地址解析相对 URL。
现在想想,如果根据上面的base URL解析相对URL./assets/forms.css,会是什么结果呢? http://example.com/assets/forms.css 当然。
你需要的就是为此
<base href="/myapp/">
带有尾部斜杠,以使其成为一个“文件夹”。