ran*_*a1k 10 node.js angularjs gruntjs yeoman yeoman-generator
我按照Yeoman的指南设置了一个Angular.js应用程序. 除了主机名从"localhost"到"0.0.0.0"之外,我没有更改任何内容.
当我这样做时grunt serve
,没有错误.最终我确实看到了''Allo,'Allo'首页,但是只有在livereload.js?snipver = 1超过30秒的延迟后才能获得GET.正如您在右侧所看到的,服务器不会输出任何异常.
我的整个项目都在github上.
我为livereload grep-ped找到了一些嫌疑人:
/node_modules/grunt-contrib-connect/node_modules/connect-livereload/index.js
以下这两个函数包含livereload url.第一个链接到" http://my.ip.addr.ess:9000/livereload.js ",其中有"无法获取".
function getSnippet() {
/*jshint quotmark:false */
var snippet = [
"<!-- livereload script -->",
"<script type=\"text/javascript\">document.write('<script src=\"http://'",
" + (location.host || 'localhost').split(':')[0]",
" + ':" + port + "/livereload.js?snipver=1\" type=\"text/javascript\"><\\/ script>')",
"</script>",
""
].join('\n');
return snippet;
};
function snippetExists(body) {
if (!body) return true;
return (~body.lastIndexOf("/livereload.js?snipver=1"));
}
Run Code Online (Sandbox Code Playgroud)我的Gruntfile.js将livereload设置为true,我想保留.
有人有线索吗?
更新:
我从头开始再次试用一台全新的机器.我仍然遇到同样的问题!这次livereload的状态显示为"net :: ERR_CONNECTION_TIMED_OUT".
更多信息:我在AWS EC2上运行,只打开了端口8000和9000.
在考虑之后,我确定它不可能是Yeoman或我的任何Ubuntu服务器的错,因为在我擦干机器并重新开始之后没有任何改变.它也不是浏览器上的阻止IP,因为Chrome和Firefox都有同样的问题.它不是我客户端计算机上的阻止IP,因为问题仍存在于另一台计算机上.
当我真正查看livereload请求的确切URL时,灯泡熄灭了.它是在端口35729上请求,我没有在我的AWS EC2帐户上打开一个端口!
打开那个端口后,它完美无缺!
归档时间: |
|
查看次数: |
2649 次 |
最近记录: |