如何在指定路径运行Angular?例如http://localhost:4200/abcde
如何让Angular项目运行在子路径下
当然可以,你需要配置两个关键参数:baseHref 和 deployUrl,具体步骤分开发和生产两种场景:
开发环境(本地运行)
修改项目根目录下的 angular.json 文件,找到对应项目的 serve 配置节点,添加 baseHref 和 deployUrl:
"projects": { "your-project-name": { "architect": { "serve": { "options": { "baseHref": "/abcde/", "deployUrl": "/abcde/", // 其他原有配置 } } } } }
保存后重新运行 ng serve,就能通过 http://localhost:4200/abcde 访问项目了。
生产环境(构建部署)
有两种方式配置:
- 修改配置文件:在
angular.json的build -> options中添加baseHref:
"build": { "options": { "baseHref": "/abcde/", // 其他原有配置 } }
然后执行 ng build 即可。
- 命令行参数:直接在构建时指定参数,无需修改配置文件:
ng build --base-href /abcde/
构建后的产物可以直接部署到服务器的 /abcde 子路径下。
额外注意(路由配置)
如果你的项目使用了 Angular Router,无需额外修改路由模块——baseHref 会自动让路由基于这个子路径工作,除非你之前手动写了绝对路径的路由规则。
内容的提问来源于stack exchange,提问作者Stefan Meller
相关产品推荐
相关产品推荐

