Angular cli:准备好生产
我编写了我的第一个Angular 2应用程序,我想把它放到测试服务器上.
我最近将它转换为Angular-cli项目并使用以下命令构建它: ng build --prod 根据我的理解,我应该能够将“/ dist”文件夹的内容粘贴到测试服务器上并运行它 ng serve 但是,如果“/ dist”文件夹可以独立运行,为什么我无法在我的电脑上作为独立应用程序运行它(即,我无法将dist文件夹的内容复制到PC上的另一个位置并运行它.) 这实际上是我将要放到测试/生产服务器上的第一个应用程序,所以如果我问的是愚蠢的话,请耐心等待. 解决方法
您不应该,我认为不能,使用ng服务来发布您的构建.使用ng build创建的文件可以上传到Web服务器并从那里提供服务.
>运行ng build -e = prod –prod –no-sourcemap –aot 虽然最新版本的angular-cli默认没有源图,但值得注意. -e = prod将确保它使用环境文件夹中定义的生产环境.最后一件事是–aot.如果你的项目中没有特殊的东西,那么很有可能你可以使用提前编译器进行预编译.但是,您可能遇到问题,您可以使用ng serve –aot解决这些问题,或者完全删除–aot. >然后,您可以继续将dist文件夹的内容复制到您的网络服务器.值得注意的是,您应确保服务器上的所有非现有文件请求都将重定向到index.html,并且指向您的应用程序的URL位于根目录中. 这意味着对于例如nginx的index.html重定向,您可以将其放在服务器配置块中: location / { try_files $uri $uri/ /index.html; } 这是因为www.example.com服务于dist文件夹内创建的index.html.如果由于某种原因您想从子文件夹(例如www.example.com/subfolder)提供应用程序,那么您应该修改< base>生成的index.html内的标记指向此子文件夹. 如果要在本地测试生产版本,可以选择安装 npm install -g lite-server 然后在控制台中导航到path / to / project / root / dist,并运行lite-server.这将创建一个Web服务器并打开您的浏览器,并提供生成的index.html 如果你使用nginx并希望很酷并静态地提供生成的.gz文件,你可以将它放在你的nginx gzip配置中: gzip on; gzip_static on; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |