首页 > 解决方案 > Vuejs index.html标签不尊重相对路径

问题描述

我正在尝试在不使用根路径的 Web 服务器上部署构建的 Vue 应用程序,并且我的相对链接正在引用根。有没有人成功解决这个问题?

我尝试将 publicPath 设置为 ""、"./" 和 "." 没有成功。我的应用程序正在部署在 mydomain.com/dev 上,并且我的索引文件链接看起来就像<link href="css/my.css">构建后的样子

vue.config.js

module.exports = {
    publicPath: "./"
}

索引.html

<link href=css/app.f262a66a.css rel=preload as=style>
<link href=css/chunk-vendors.d92c4b75.css rel=preload as=style>
<link href=js/app.384925b6.js rel=preload as=script>

我希望这些链接会尝试从中加载文件,mydomain.com/dev/css/app.f262a66a.css但它们正在从中加载mydomain.com/css/app.f262a66a.css,因此我收到 404 响应。

任何帮助将不胜感激

标签: htmlcssvue.jshyperlinkrelative-path

解决方案


这个问题很老,但没有公认的答案,所以我会试一试。

这解决了我的问题:

vue.config.js(在你的 Vue 项目目录的根目录):

module.exports = {
    publicPath: '././',
  }

推荐阅读