将Angular 16升级至18后如何部署?是否仅需复制文件?
Angular 18 生产环境部署指南
核心逻辑说明
首先明确:不能直接复制本地开发环境的文件到生产环境。开发环境依赖包含大量仅用于开发的工具(如构建器、测试框架),生产环境完全不需要这些冗余内容,直接复制还可能引发运行问题。正确流程是先构建优化后的生产包,再部署,依赖也无需逐个手动安装。
1. 生成生产构建包
在本地开发环境运行生产构建命令,Angular会自动完成代码压缩、Tree Shaking、缓存优化等处理,生成可直接部署的静态文件:
ng build --configuration production
构建产物默认输出到项目根目录的dist/文件夹(具体路径可在angular.json的architect.build.options.outputPath中查看),这个文件夹里的所有文件就是生产环境需要的全部资源。
2. 部署静态文件到生产服务器
把dist/目录下的所有文件上传到生产服务器的静态服务目录即可,比如:
- Nginx服务器的
/usr/share/nginx/html目录 - Apache服务器的
/var/www/html目录 - 云服务商的静态托管存储桶
3. 关于生产环境依赖的说明
- 如果你的项目是SSR(服务器端渲染)架构,需要在生产服务器运行Node.js服务:
仅上传项目的package.json和package-lock.json(或yarn.lock)到服务器,然后执行:
该命令会自动识别并安装npm install --productionpackage.json中dependencies字段下的生产依赖,无需逐个手动安装。 - 如果是纯静态部署(绝大多数Angular项目采用这种方式),生产服务器不需要安装任何依赖——构建过程已经把所有依赖打包进了静态JS文件中,直接部署
dist/内的文件即可。
额外配置提示
- 若使用Angular路由,需在服务器配置中设置路由 fallback 到
index.html,避免刷新页面时出现404错误。 - 构建前确认生产环境的环境变量配置正确,可通过
--configuration指定不同环境配置文件。
内容的提问来源于stack exchange,提问作者Amokachi
相关产品推荐
相关产品推荐

