2021年5月10日星期一

同一个域名下部署多个前端项目,修改vue-cli 环境变量BASE_URL

公司让用vue重构一个angular项目,需要可以在新旧版本间切换,慢慢过渡到只用新版本。

查询Nginx配置,得知

想要在同一个域名下部署多个前端项目,通过不同url来区分调用相应前端项目。
比如:部署项目a,项目b。想要效果如下。
浏览器输入 /a/ { alias html/app/; index index.html index.htm; try_files $uri $uri/ /app/index.html;}location /b/ { alias html/pc/; index index.html index.htm; try_files $uri $uri/ /pc/index.html;}

vue router:相关配置

base

  • 类型: string

  • 默认值: "/"

    应用的基路径。例如,如果整个单页应用服务在 /app/ 下,然后 base 就应该设为 "/app/"

base: process.env.BASE_URL,

上面代码是vue-cli自动生成的配置,看到这里我就想修改BASE_URL,通过新建.env环境变量文件

环境变量

你可以在你的项目根目录中放置下列文件来指定环境变量:

.env    # 在所有的环境中被载入

只有 NODE_ENVBASE_URL 和以 VUE_APP_ 开头的变量将通过 webpack.DefinePlugin 静态地嵌入到客户端侧的代码中

 然后我在.env中修改BASE_URL,完全不起作用,随意设个VUE_APP_的变量是可以实现的,后来我发现了下面这段话,试着只修改vue.config.js 中的 publicPath

  • BASE_URL - 会和 vue.config.js 中的 publicPath 选项相符,即你的应用会部署到的基础路径

vue-cli配置

publicPath

  • Type: string

  • Default: '/'

默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上,例如 https://www.my-app.com/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.my-app.com/my-app/,则设置 publicPath 为 /my-app/

修改vue.config.js 中的 publicPath后,得以实现配置服务的基路径。









原文转载:http://www.shaoqun.com/a/731806.html

跨境电商:https://www.ikjzd.com/

深诺互动:https://www.ikjzd.com/w/2746

空中云汇:https://www.ikjzd.com/w/2684


公司让用vue重构一个angular项目,需要可以在新旧版本间切换,慢慢过渡到只用新版本。查询Nginx配置,得知想要在同一个域名下部署多个前端项目,通过不同url来区分调用相应前端项目。比如:部署项目a,项目b。想要效果如下。浏览器输入/a/{aliashtml/app/;indexindex.htmlindex.htm;try_files$uri$uri//app/index.html;}lo
淘粉吧:https://www.ikjzd.com/w/1725
淘粉8:https://www.ikjzd.com/w/1725
雨果:https://www.ikjzd.com/w/1307
14个反向链接检查工具,助你随时跟踪竞争对手!:https://www.ikjzd.com/home/93876
外贸人必备技能!如何利用Google找客户?:https://www.ikjzd.com/home/19666
新一轮1万亿美元的发钱计划蓄势中,库存限制下卖家难接招?:https://www.ikjzd.com/home/126840

没有评论:

发表评论