vendor.js文件实际上是一个HTML文件? - 关于nginx的Ember 2.6

时间:2016-07-05 12:38:45

标签: nginx ember.js

加载我的应用程序时,我得到了WSOD,打开控制台显示两个JS文件的错误:

uncaught SyntaxError: Unexpected token < vendor.js
uncaught SyntaxError: Unexpected token < myapp.js

查看Chromes devtools中的文件vendor.js和myapp.js的内容,它们的内容是dist/index.html文件的内容,因此它们不是实际的javascript文件(即{{1} }和dist/assets/vendor.js)。

我构建ember应用程序的唯一方法是运行命令dist/assets/myapp.js,在devtools中查看html文件的原因是什么,是浏览器看到的JS文件的实际内容?

我正在使用nginx并检查它是否包含/etc/nginx/mime.types,因此不确定问题出在哪里

2 个答案:

答案 0 :(得分:0)

您可能已将网络服务器nginx配置为始终发送index.html的内容。由于余烬路由器,这是必要的。

如果您访问http://example.com/myroute,则希望将index.html发送到浏览器,然后让ember路由器呈现myroute路由的内容。

可能你已经配置了这个错误,所以nginx总是总是发送index.html每个请求,这是不正确的。如果请求的文件不存在,它应该只发送index.html

我希望这会引导你走向正确的方向。这不是一个余烬问题,只是nginx配置。

答案 1 :(得分:0)

我遇到了同样的问题,但发现当我将Ember CLI locationType中的config/environment.js选项从'auto'转为'hash'时我的网页正确加载对我的服务器配置的任何更改。