nginx运行angular2/4/5打包的dist

 ------------------------------------------------------------

2018/06/25 同一台服务器通过nginx配置多个angular项目请移步至:https://www.cnblogs.com/defaultlee/p/9223564.html

-------------------------------------------------------------

客户想要在自己的电脑上演示demo,但是没有安装配置任何的开发环境,demo是angular cli写的纯前端,无后台逻辑。

angular编译出来的dist如下图:

直接打开index.html,不能加载通过Router控制的控件,会提示Failed to load resource: net::ERR_FILE_NOT_FOUND

既不能给客户安装nodejs、tomcat什么的,也不能让客户输什么命令。

所以综合考虑采用nginx运行demo。

配置步骤

 一、下载nginx,找到html文件夹,打开html文件夹

二、将dist里面的东西复制到 F:\nginx-v1.12.1\nginx-1.12.1\nginx-1.12.1\html目录下

三、修改nginx配置,打开 F:\nginx-v1.12.1\nginx-1.12.1\conf\nginx.conf

"location  / " 中增加一行配置: try_files $uri $uri/ /index.html;

也可以单独给每个路由配置,单页面应用,统一重定向到 /index.html就行了

 

当然也有其他方案,参考http://www.cnblogs.com/createGod/p/7259958.html

四、给用户添加快捷方式,双击运行

 

1、启动demo.bat

start nginx.exe

 2、关闭demo.bat

nginx -s stop

3、快捷方式

打开demo页面 http://localhost:80/login

这样就配置完成了。

操作方式:

1、将带nginx的整个文件拷贝给用户

2、双击"启动demo.bat"运行

3、双击“打开demo页面”

4、双击“关闭demo.bat”关闭

总结:angular,单页面应用程序,根据地址栏里的内容进行解析,加载不同的module和component(生成的js),但是访问的是同一个页面。

故虽然是静态页面,但是不能直接通过浏览器打开,需要一个启动一个服务器返回相同的index.html。

 

posted @ 2017-10-16 15:07  Lee_Per  阅读(6644)  评论(0编辑  收藏  举报